2.2.7 General Purpose Register AVR
Gambar 2.10 General Purpose Register AVR Gambar  diatas  menunjukkan  struktur  32  general  purpose  register  yang
terdapat  di  dalam  CPU,  masing-masing  register  ditentukan  juga  dalam  alamat memori  data,  dipetakan  kedalam  32  lokasi  pertama  data  user.  Walaupun  tidak
secara  fisik  diimplementasikan  sebagai  lokasi  SRAM,  namun  pengaturan  ini memberikan flexsibilitas dalam mengakses register, seperti register pointer X, Y,
dan Z dapat diset menuju index dari register file manapun.
2.2.8 Stack Pointer
Stack  digunakan  untuk  menyimpan  data  sementara,  untuk  menyimpan variable  local  dan  untuk  menyimpan  return  address  setelah  interrupt  dan
pemanggilan  subrutin.  Stack  pointer  selalu  menunjukkan  ke  puncak  stack.  Stack diimplementasi  mulai  dari  lokasi  memori  tertinggi  ke  lokasi  memori  terendah,
sehingga perintah PUSH akan menurangi Stack Pointer.
Gambar. 2.11 Stack Pointer
Universitas Sumatera Utara
2.2.9 Peta Memori AVR ATmega 8
Gambar 2.12 Peta Memori AVR ATmega 8
Memori atmega terbagi menjadi tiga yaitu : 1.
Memori Flash Memori  flash  Adalah  memori  ROM  tempat  kode-kode  program  berada.
Kata flash menunjukkan jenis ROM yang dapat ditulis dan dihapus secara elektrik.  Memori  flash  terbagi  menjadi  dua  bagian  yaitu  bagian  aplikasi
dan  bagian  boot.  Bagian  aplikasi  adalah  bagian  kode-kode  program aplikasi berada. Bagian boot adalah bagian yang digunakan khusus untuk
booting  awal  yang  dapat  diprogram  untuk  menulis  bagian  aplikasi  tanpa melalui programmerdownloader, misalnya melalui USART.
2. Memori data
Memori  data  adalah  memori  RAM  yang  digunakan  untuk  keperluan program.  Memori  data  terbagi  menjadi  empat  yaitu:  32  GPR  General
Purphose Register adalah register khusus yang bertugas untuk membantu eksekusi  program  oleh  ALU  Arithmatich  Logic  Unit,  dalam  instruksi
Universitas Sumatera Utara
assembler  setiap  instruksi  harus  melibatkan  GPR.  Dalam  bahasa  C biasanya digunakan untuk variabel global atau nilai baik fungsi dan nilai-
nilai  yang  dapat  memperingan  kerja  ALU.  Dalam  istilah  processor komputer  sehari-
hari GPR dikenal sebagai “chace memory”, IO register dan Aditional IO register yang difungsikan khusus untuk mengendalikan
berbagai pheripheral dalam mikrokontroler seperti pin port, timercounter, usart    dan  lain-lain.  Register  ini  dalam  keluarga  mikrokontroler  MCS51
dikenal sebagai SFR Special Function Register 3.
EEPROM EEPROM  adalah  memori  data  yang  dapat  mengendap  ketika  chip  mati
off,  digunakan  untuk  keperluan  penyimpanan  data  yang  tahan  terhadap gangguan satu daya.
2.2.10 Status Register SREG