d. Bit 4-S: Sign Bit
Bit-s selalu berada diantara flag-N negatif dan flag V komplemen dua overflow.
e. Bit 3-V: Two’s Complement Overflow Flag
Bit berguna untuk mendukung 2 komplemen operasi aritmatika. f.
Bit 2-N: Negative Flag The Negative Flag N menghasilkan bilangan negative atau logic operation.
g. Bit 1-Z: Zero Flag
The Zero Flag Z menghasilkan nilai 0 nol dalam aritmatika atau logic operation.
h. Bit 0-C: Carry Flag
The Carry Flag C menghasilkan carry dalam aritmatika atau logic operation. .
L. Bahasa C
Dikembangkan pertama kali oleh Dennis Ritchie dan Ken Thomson pada tahun 1972, bahasa C merupakan salah satu bahasa pemrograman yang paling
populer untuk mengembangkan program-program aplikasi yang berjalan pada sistem mikroprosesor. Karena kepopulerannya dan banyak digunakan, vendor-
vendor perangkat lunak kemudian mengembangkan compiler C sehingga menjadi beberapa varian, macam-macam varian tersebut yaitu: Turbo C, Borland C,
Microsoft C, Power C, Zortech C, dan lain sebagainya. Untuk menjaga probabilitas, compiler-compiler C tersebut menerapkan ANSI C American
National Standards Institute sebagai standar bakunya. Perbedaan antara
compiler-compiler tersebut umumnya hanya pada pengembangan fungsi-fungsi pustaka serta fasilitas IDE Intergrated Development Environment.
Bahasa C relatif merupakan bahasa pemrograman yang sangat fleksibel dan tidak terlalu terikat dengan berbagai aturan yang sifatnya kaku. Salah satu hal yang
membatasi penggunaan bahasa C dalam sebuah aplikasi adalah semata-mata kemampuan imaginasi pemrogramnya saja. Sebagai contoh, dalam bahasa
program C kita dapat saja secara bebas menjumlahkan karakter huruf misal ‘D’ dengan bilangan bulat misal ‘4’, dimana hal ini tidak mungkin dapat dilakukan
dengan menggunakan bahasa tingkat tinggi lainnya. Karena sifatnya ini, maka bahasa C seringkali dikategorikan sebagai bahasa tingkat menengah mid level
language. Dalam kaitannya dengan pemrograman mikrokontroler, bahasa C sekarang
mulai menggeser bahasa yang lebih dulu digunakan untuk pemrograman mikrokontroler yaitu bahasa assembler. Penggunaan bahasa C akan sangat efisien
terutama untuk program mikrokontroler yang berukuran relatif besar. Dibandingkan dengan bahasa
assembler, penggunaan bahasa C dalam pemrograman memiliki beberapa kelebihan berikut. Mempercepat waktu
pengembangan, bersifat modular dan terstruktur, namun kelemahannya adalah kode program hasil kompilasi akan relatif lebih besar dan sebagai konsekuensinya
hal ini terkadang akan mengurangi kecepatan eksekusi. Khusus pada mikrokontroler AVR, untuk mereduksi konsekuensi negatif
diatas, Perusahaan Atmel merancang sedemikian rupa sehingga arsitektur AVR ini efisien dalam mendekode serta mengeksekusi instruksi-instruksi yang umum
dibangkitkan oleh compiler C. Dalam kenyataannya, pengembangan arsitektur AVR tidak dilakukan sendiri oleh perusahaan Atmel tetapi ada kerja sama dengan
salah satu vendor pemasok compiler C untuk mikrokontroler tersebut, yaitu IAR C. Beberapa compiler C untuk mikrokontroler AVR dapat dilihat pada Tabel 8.
. Tabel 8. Beberapa compiler C untuk mikrokontroler AVR
Struktur penulisan bahasa C secara umum terdiri atas empat blok, yaitu: 1. Header.
2. Deklarasi konstanta global atau variabel. 3. Fungsi atau prosedur.
4. Program utama.
M. Perangkat Lunak CodeVision AVR CVAVR