Tugas Pertemuan 4 Mikrokontroler

1.Bahasa c memliki tingkatan yang lebih tinggi daripada bahasa asembler
   contoh:bahasa asembler merupakan sandi dari bahasa inggris(mov dari kata move)
               bahasa c (#include,#if,#define)

2.
Bagian-bagian Compiler:
a.      Lexical Analiysis (scanner), Lexical Analysis sering disebut Scanner bertugas untuk mendekomposisi program sumber menjadi bagian-bagian kecil. Tugasnya secara detail adalah mengindentifikasi semua besaran yang membangun suatu bahasa; mentransformasikan, dan menentukan jenis token; menangani kesalahan dan tabel simbol. Contoh besaran Leksikal :
   1.Identifier, dapat berupa keyword atau nama kunci, seperti IF.. ELSE, BEGIN..END (pada                    Pascal), INTEGER (pascal), INT,FLOAT (bahasa C).
   2.Konstanta, terdiri dari besaran yang merupakan bilangan bulat (integer), bilangan pecahan                 (float/Real), boolean (true/false), karakter, string, dan sebagainya.
   3.Operator, terdiri dari operator aritematika ( + - * /), operator logika ( < = > ).
   4.Delimiter, berguna sebagai pemisah/pembatas, seperti kurung buka, kurung tutup, titik,                        koma,titik dua, titik-koma
   5.White Space, pemisah yang diabaikan oleh program seperti : enter, spasi, ganti baris, akhir file.
b.      Syntax Analysis, bertugas memeriksa kebenaran urutan dari token-token yang terbentuk oleh lexical analysis. Syntax Analysis sering disebut Parser, sedangkan proses pen-deteksian-nya (pengenalan token) disebut dengan parsing. Pengelompokan token-token kedalam class syntax (bentuk syntax), seperti procedure, Statement,dan  expression.
c.       Semantics Analyser, proses ini adalah proses kelanjutan dari proses kompilasi sebelumnya, yaitu analisa leksikal (scanning) dan analisa sintaks (parsing). Parser hanya akan mengenali simbol-simbol '=', '+' dan '*', parser tidak mengetahui makna dari simbol-simbol tersebut, untuk mengenali simbol-simbol tersebut Compiler menggunakan Analysis Semantics. Pemeriksaan biasa dilakukan pada tabel indentifier, tabel  display, dan tabel block.
d.      Intermediate Code, bertujuan untuk memperkecil usaha dalam membuat compilator dari sejumlah bahasa ke sejumlah mesin.
e.       Code Optimization, bertujuan untuk mengoptimalkan code, terdiri dari:
   1.Dependensi Optimasi, bertujuan untuk menghasilkan kode program yang berukuran lebih kecil            dan cepat.
   2.Optimasi Lokal, adalah optimasi yang dilakukan hanya pada suatu blok dari source code.
   3.Optimasi Global, biasanya dilakukan dengan suatu graph terarah yang menunjukkan jalur yang           mungkin selama ekskusi programa.
f.        Table Management,memiliki dua fungsi penting yaitu : (1) membantu pemeriksaan kebenaran semantik dari program sumber, (2) membantu dan mempermudah dalam pembuatan intermediate code dan proses pembangkitan kode. Ada beberapa jenis Tabel Informasi:
    1.Tabel identifier, berfungsi menampung semua identifier yang terdapat dalam program.
    2.Tabel Array, berfungsi menampung informasi tambahan untuk sebuah array.
    3.Tabel blok, mencatat variabel-variabel yang ada pada blok yang sama.
    4.Tabel Real, menyimpan elemen tabel bernilai real.
    5. Tabel string,menyimpan informasi string.
    6.Tabel display, mencatat blok yang aktif.
g.      Error Handling, yaitu kesalahan program dalam proses penerjemahan pada Compiler. Kesalahan program dapat berupa :
1.Kesalahan Leksikal karena kesalahan dalam mengetik/mengeja.
2.Kesalahan Sintaks karena kesalahan rumus, misalnya dalam operasi aritematika dengan tanda kurung yang jumlahnya kurang.
3.Kesalahan Semantic karena tipe data yang salah atau variabel yang belum didefinisikan.

3.Desimal ke biner =
   87(d)=0101 0111
   73(d)=0100 1001
   94(d)=0101 1110
   47(d)=0010 1111
  
Biner ke Hexsadesimal
  101001(b)=29
  10110(b)=16
  1110011(b)=73
  001100(b)=c
  11011100(b)=dc

Hexsadesimal ke Biner 
   5f(h)=0101 1111
   E7(h)=1110 0111
   89(h)=1000 1001
   A4(h)=1010 0100
   55(h)=0101 0101
   27(h)=0010 0111
   D9(h)=1101 1001
   EF(h)=1110 1111
  CA(h)=1100 1010

Nama  =  Christian Philipa A
Nim    =  13170187
Kelas  =  13.3A.35
Dosen =  Dany Pratmanto M.kom

Komentar