1. 8-bit Data Bus Interface (D0 sampai D7), 8 jalur Data Bus eksternal.
2. 16-Bit Internal Architecture, internal Data Bus 16 jalur.
3. Direct Addressing memory sampai 1 Mbyte, Address Bus A0 sampai A9.
4. Memiliki Register masing-masing 16 bit.
• Register Data
Register Data, terdiri dari 16 bit data yang dapat diakses dalam format 2X8
bit. Berikut ini sejumlah register data:
• Register Alamat
• Register Status
1. Mode Maksimum.
2. Mode Minimum.
Arsitektur pada uP 8086,8088, dan beberapa versi diatasnya hingga pentium pro
sangat mirip. Pemahaman tentang arsitektur ini penting untuk mengetahui cara programming
processor. Dalam pemprograman uP tidak terpisahkan dari register, yakni sebuah memori
sementara milik uP. Terdapat register yang memang visible, yakni dapat dialamati oleh uP.
Namun terdapat juga yang unvisible, terutama pada versi 80286 dan setelahnya, untuk
melakukan operasi pada protected mode. Adapun susunan dari register yang dapat dialamati
adalah:
Seperti terlihat pada gambar, model pemprograman yang ada adala 8, 16, 32 bit. Pada
model 8 bit, terdapat register AH, AL, BH, BL, CH, CL, DH, DL. Kemudian pada model 16
bit terdapat AX, BX, CX, DX, SP, BP, DI, SI, IP, FLAGS, CS, DS, ES, SS, FS, dan GS.
Untuk 32 bit, EAX, EBX, ECX, EDX, hingga EFLAGS. Model tersebut dibagi menjadi dua
type, general purpose register dan special purpose register.
EAX, jika dalam model 32 bit adalah EAX, dalam mode 16 bit adalah AX,
dan 8 bit untuk AL atau AH. Digunakan untuk menyimpan hasil aritmatika, dan
lokasi alamat offset dan memory.
EBX, menyimpan lokasi alamat offset memory sistem dan memory data.
ECX, digunakan untuk melakukan penghitungan.mengalamati memory data.
EDX, menyimpan bagian dari hasil pembagian atau perkalian, mengalamati
memory data.
EBP, base pointer, menunjuk lokasi memory pada saat transfer data memory.
EDI, mengalamati data string tujuan untuk instruksi yang berhubungan dengan
string.
ESI, mengalamati data string sumber untuk instruksi yang berhubungan
dengan string.
2. Special Purpose Register
Struktur dari FLAGS register sama untuk versi 8086 hingga pentium Pro.
Adapun masing-masing fungsi dari FLAG adalah:
1. CF, carry flag, untuk menyimpan hasil simpanan atau pinjaman pada
operasi tambah dan kurang.
2. Parity, mengindikasikan 0 atau 1. Pengecekan parity sekarang lebih
banyak digunakan pada komunikasi data.
3. ACF, mengindikasikan parity namun hanya pada bit 3 dan 4.
4. ZF, mengindikasikan hasil aritmatika apakah 0 atau tidak. jika nilainuya 0,
maka ZF=1 dan sebaliknya.
5. SF, sebagai tanda apakah sebuah integer bertanda atau tidak. jika signed,
SF=1; dan sebaliknya.
6. TrapF, enable/disable fitur debugging.
7. IF, enable/disable pin input INTR.
8. DF, setting direction dari register. dapat increment atau decrement.
disetting dengan bantuan instruksi STD, dan CLD.
9. Overflow, mengindikasikan telah terjadi overflow pada operasi tambah
atau kurang. para operasi unsigned number, biasanya overfloaw tidak
diperhatikan.
10. I/OPL, set level I/O privilege. paling tinggi adalah 00 dan terendah 11.
Privilege paling tinggi tidak akan halangan dalam eksekusi dan sebaliknya.
11. NT, diset ketika software melakukan perintah nested, yakni mengerjakan
perintah lain dalam suatu perintah.
12. RS,control resume dari perintah setelah perintah berikutnya dikerjakan.
13. VM, set virtual mode yang memungkian bekerjanya beberapa DOS.
Alignment Check, tersetting apabila word atau double word tidak
teralamati dengan benar.
• Segment Register
Jika segment ini dihubungkan pada memory, maka dapat menghasilkan alamat
memory tertentu. Fungsi yang sebenarnya dari sebuah segment register, berbeda pada
real atau protected mode. Adapun secara general fungsi dari segment register adalah
sebagai berikut:
Real mode hanya menggunakan 1Mbyte memory internal. Ini ada pada sistem
8086 dan 88. PCDOS dan MSDOS selalu bekerja pada real mode.
Sistem pengalamatan memory didapat dari gambar diatas. Pada 80286 alamat
offset menjadi lebih panjang dengan tambahan 64K minus 16K. Biasanya digunakan
sebagai pengalamatan memory tambahan.
• Segment Default Dan Offset Register
Contoh kombinasi CS:IP, misal CS dimulai dengan alamat 4000H, dengan IP:
0001H. Maka kombinasinya adalah 40001H. kombinasi lain, adlah SS dan SP/BP.
Alamat yang ditentukan dari kombinasi ini akan merujuk pada bagian memory yang
digunakan sebagai stack.