Bab III Register Ass

25
GURU YANG PALING BAIK ADALAH HATI MU GURU YANG PALING BAIK ADALAH HATI MU TEMAN YANG PALING BAIK ADALAH HATI MU TEMAN YANG PALING BAIK ADALAH HATI MU SESUATU YANG PALING MENGERTI DIRI MU ADALAH HATI MU SESUATU YANG PALING MENGERTI DIRI MU ADALAH HATI MU JADI JAGALAH HATI MU AGAR DIA MAMPU MENJAGA HIDUP MU JADI JAGALAH HATI MU AGAR DIA MAMPU MENJAGA HIDUP MU KARENA HATI MU TAKKAN MENJERUMUSKAN DIRI MU KARENA HATI MU TAKKAN MENJERUMUSKAN DIRI MU

Transcript of Bab III Register Ass

Page 1: Bab III Register Ass

GURU YANG PALING BAIK ADALAH HATI MUGURU YANG PALING BAIK ADALAH HATI MU

TEMAN YANG PALING BAIK ADALAH HATI MUTEMAN YANG PALING BAIK ADALAH HATI MU

SESUATU YANG PALING MENGERTI DIRI MU ADALAH HATI MUSESUATU YANG PALING MENGERTI DIRI MU ADALAH HATI MU

JADI JAGALAH HATI MU AGAR DIA MAMPU MENJAGA HIDUP JADI JAGALAH HATI MU AGAR DIA MAMPU MENJAGA HIDUP MUMU

KARENA HATI MU TAKKAN MENJERUMUSKAN DIRI MUKARENA HATI MU TAKKAN MENJERUMUSKAN DIRI MU

Page 2: Bab III Register Ass

BAB IIIREGISTERPENGERTIAN REGISTER

Dalam pemrograman dengan bahasa Assembly, mau tidak mau anda harus berhubungan dengan apa yang dinamakan sebagai Register. Lalu apakah yang dimaksudkan dengan register itu sebenarnya ?. Register merupakan sebagian memori dari mikroprosesor yang dapat diakses dengan kecepatan yang sangat tinggi. Dalam melakukan pekerjaannya mikroprosesor selalu menggunakan register-register sebagai perantaranya, jadi register dapat diibaratkan sebagai kaki dan tangannya mikroprosesor.

Register digunakan untuk menyimpan instruksi dan data yang sedang diproses oleh CPU, sedangkan instruksi-instruksi dan data lainnya yang menunggu giliran untuk diproses masih tersimpan di main memory.

Jadi ada 3 macam ingatan yang dipergunakan di dalam sistem komputer yaitu :

1. REGISTER, dipergunakan untuk menyimpan instruksi dan data yang sedang diproses.

2. MAIN MEMORY, dipergunakan untuk menyimpan instruksi dan data yang akan diproses dan hasil dari pengolahan.

3. EXTERNAL MEMORY (simpanan luar), dipergunakan untuk menyimpan program dan data secara permanen.

Page 3: Bab III Register Ass

ALU

Control Unit

RAM

ROM

CPU

Main Memory

Ala

t

Inpu

t /

Out

put

Hubungan alat pemeroses dalam sistem komputer

Adress bus

Data busControl bus

MDR

IR

PC

MAR

AccumulatorAccumulator

REGITER

Page 4: Bab III Register Ass

1. CONTROL UNIT

Bagian ini bertugas mengatur dan mengendalikan semua peralatan yang ada pada sistem komputer, secara umum cara kerjanya adalah :

- Mengatur dan mengendalikan alat-alat input dan output.

- Mengambil instruksi-instruksi dari main memory.

- Mengamabil data dari main memory kalau diperlukan oleh proses.

- Mengirim instruksi ke ALU bila ada perhitungan arithmatika atau perbandingan logika serta mengawasi kerja ALU.

- Menyimpan hasil proses ke main memory.

2. ARITHMATIC AND LOGIC UNIT

Tugas utama adalah melakukan semua perhitungan arithmatika yang terjadi sesuai instruksi program. Tugas lainya adalah melakukan keputusan dari operasi logika sesuai dengan instruksi program. Logical Opration meliputi perbandingan dua buah elemen logika dengan menggunakan operator logika. (= , <>, <, <=, >, >=)

Page 5: Bab III Register Ass

3. REGISTER

a. Intruction Register (IR), atau disebut juga program register digunakan untuk menyimpan instruksi yang sedang diproses. Pemrosesan program dilakukan instruksi per instruksi. Instruksi yang mendapat giliran untuk diproses diambil dari main memory dan disimpan di instruction regisster (IR).

b. Program Counter (PC), atau disebut Control Counter atau instruction counter adalah register yang digunakan untuk menyimpan alamat (adress) lokasi dari main memory yang berisi instruksi yang sedang diproses.

c. Accumulator, adalah register yang diberi nama AX register dan tiga buah yang lainnya untuk operand register, yaitu BX, CX dan DX register.

Operand Register : digunakan untuk menampung data atau operand yang sedang di operasikan.

Accumulator register : digunakan untuk menyimpan hasil dari operasi ariithmatika dan operasi logika yang dilakukan ALU.

Page 6: Bab III Register Ass

JENIS-JENIS REGISTERRegister yang digunakan oleh mikroprosesor dibagi menjadi 5 bagian dengan tugasnya yang berbeda-beda pula, yaitu :

1. Segmen Register.Register yang termasuk dalam kelompok ini terdiri atas register CS,DS,ES dan SS yang masing-masingnya merupakan register 16 bit. Register-register dalam kelompok ini secara umum digunakan untuk menunjukkan alamat dari suatu segmen.

a. Register CS (Code Segment) digunakan untuk menunjukkan tempat dari segmen yang sedang aktif, juga suatu bagian dari memori yang memuat kode (program dan prosedur) yang digunakan oleh microprocessor. Register CS mendefinisikan alamat awal dari bagian kode pemuatan memori. Pada operasi model real, CS menetapkan awal dari suatu bagian memory 64 K byte; dalam mode terlindung.CS memilih suatu pendeskripsi yang menggambarkan alamat awal dan panjang dari suatu bagian kode pemuatan memori. Segmen kode panjangnya terbatas sampai 64K byte dalam 8088-80286 dan 4G byte dalam 80386, register ini sebaiknya tidak sembarang diubah karena akan menyebabkan kekacauan pada program anda nantinya.

Page 7: Bab III Register Ass

b. Register DS (Data Segment) biasanya digunakan untuk menunjukkan tempat segmen dimana data-data pada program disimpan. Umumnya isi dari register ini tidak perlu diubah kecuali pada program residen. Segmen data ini sebagian besar data yang digunakan oleh program. Data diakses dalam segmen data oleh alamat offset atau isi dari register lain yang mempunyai alamat offset, seperti halnya segmen kode dan segmen yang lain panjangnya dibatasi sampai 64 K byte dalam 8088-80286 dan 4G byte dalam 80386 dan di atasnya.

c. Register ES (Extra Segment), sesuai dengan namanya adalah suatu register bonus yang tidak mempunyai suatu tugas khusus. Register ES ini biasanya digunakan untuk menunjukkan suatu alamat di memory, misalkan alamat memory video. Pada prosesor 80386 terdapat tambahan register segment 16 bit, yaitu FS<Extra Segment> dan GS<Extra Segment>. Segmen ini adalah suatu penambahan segmen data yang digunakan oleh beberapa instruksi string untuk menyimpan data tujuan.

d. Register SS (Stack Segment) menunjukkan letak dari segmen yang digunakan oleh stack. Posisi dari arus masuk dalam segmen stack dibatasi oleh register penunjuk stack. Register BP juga mengamati data dalam segmen stack.

e. FS dan GS segmen ini adalah register segmen tambahan yang tersedia pada mikroprocessor 80386,80486, pentium dan pentium pro, yang memungkinkan dua segmen memori tambahan diakses oleh program-program yang dijalankan.

Page 8: Bab III Register Ass

2. Pointer dan Index Register.Register yang termasuk dalam kelompok ini adalah register SP,BP,SI

dan DI yang masing-masing terdiri atas 16 bit. Register- register dalam kelompok ini secara umum digunakan sebagai penunjuk atau pointer terhadap suatu lokasi di memory.

Register SP(Stack Pointer) yang berpasangan dengan register segment SS(SS:SP) digunakan untuk mununjukkan alamat dari stack, sedangkan register BP(Base Pointer)yang berpasangan dengan register SS(SS:BP) mencatat suatu alamat di memory tempat data.

Register SI(Source Index) dan register DI(Destination Index) biasanya digunakan pada operasi string dengan mengakses secara langsung pada alamat di memory yang ditunjukkan oleh kedua register ini. Pada prosesor 80386 terdapat tambahan register 32 bit, yaitu ESP,EBP,ESI dan EDI.

Page 9: Bab III Register Ass

3. General Purpose Register.Register yang termasuk dalam kelompok ini adalah register

AX,BX,CX dan DX yang masing-masing terdiri atas 16 bit. Register- register 16 bit dari kelompok ini mempunyai suatu ciri khas, yaitu dapat dipisah menjadi 2 bagian dimana masing-masing bagian terdiri atas 8 bit, seperti pada gambar 4.1. Akhiran H menunjukkan High sedangkan akhiran L menunjukkan Low.

Page 10: Bab III Register Ass

Secara umum register-register dalam kelompok ini dapat digunakan untuk berbagai keperluan, walaupun demikian ada pula penggunaan khusus dari masing masing register ini yaitu :

Register AX, secara khusus digunakan pada operasi aritmatika terutama dalam operasi pembagian dan pengurangan.

Register BX, biasanya digunakan untuk menunjukkan suatu alamat offset dari suatu segmen.

Register CX, digunakan secara khusus pada operasi looping dimana register ini menentukan berapa banyaknya looping yang akan terjadi.

Register DX, digunakan untuk menampung sisa hasil pembagian 16 bit. Pada prosesor 80386 terdapat tambahan register 32 bit, yaitu EAX,EBX,ECX dan EDX.

EAX : dirujuk sebagai register 32-bit (EAX), sebagai register (akumulator) 16- bit (AX), atau 2 register 8-bit (AH dan AL). Akumulator digunakan untuk instruksi-instruksi perkalian, pembagian dan beberapa instruksi penyesuaian. Dalam mikroprocessor 80386 ke atas, register ini juga dapat menyimpan alamat offset sebuah lokasi dalam sistem memori.

Page 11: Bab III Register Ass

EBX : dapat dialamati sebagai EBX, BX, (BH, BL). Register (base index) BX dapat menyimpan alamat offset sebuah lokasi memori dalam sistem memori semua versi mikroprocessor. Dalam mikroprocessor 80386 ke atas, EBX mengalamati data memori.

ECX : merupakan register-register serbaguna yang juga dapat digunakn untuk instruksi perhitungan. Dalam mikroprocessor 80386 ke atas, register ini dapat juga menyimpan alamat offset data memori. Instruksi-instruksi yang menggunakan perhitungan merupakan instruksi string yang diulang (REP/REPE/REPNE); dan instruksi pergeseran, perputaran, dan instruksi LOOP/LOOPD. Instruksi pergeseran dan perputaran menggunakan CL, instruksi string berulang memakai CX, dan instruksi LOOP/LOOPD menggunakan CX atau ECX.

EDX : merupakan register serbaguna yang dapat digunakan untuk (data) menyimpan hasil perkalian dan menyimpan sisa dalam pembagian. Dalam mikroprocessor 80386 ke atas, register ini juga mampu mengalamati data memori.

EBP : menunjuk sebuah lokasi memori yang dalam semua versi mikriprocessor digunakan untuk mentransfer data memori, Reister ini dialamati sebagai EBP dan BP.

Page 12: Bab III Register Ass

EDI : Sering mengalamati data tujuan string untuk beberapa instruksi string. Regiated ini juga berfungsi sebagai register serbaguna 32-bit (EDI) atau 16-bit (DI).

ESI : Digunakan sebagai ESI dan sebagai SI. Register Indeks sumber sering mengalamati sumber data string untuk beberapa instruksi string. Seperti EDI, ESI juga berfungsi sebaai register serbaguna. Sebagai register 16-bit dialamati sebagai SI; sebagai register 32-bit dialamati sebagai ESI.

EIP : Mengalamati instruksi selanjutnya dalam sebuah bagian memori yang didefinisikan sebagaisegmen kode. Register ini merupakan IP (16-bit) ketika mikroprocessor dioprasikan dalam mode real namun menjadi EIP (32-bit) bila mikroprocessor 80386 ke atas ke atas dioperasikan dalam mode terlindung. Penunjuk instruksi, yang menunjuk ke instruksi selanjutnya dalam satu prgram, digunakan oleh mikroprocessor untuk mendapatkan instruksi berurutan berikutnya dalam suatu program yang lokasinya terletak di dalam segmen kode. Penunjuk instruksi dapat dimodifikasi dengan instruksi jump atau call.

ESP : mengalamati sebuah lokasi memori yang disebut stack. Memori stack menyimpan data melalui penunjuk ini dan akan dielaskan dengan instruksi yang mengalamati data stack. Register disebut SP juka digunakan sebagai register 16 bit dan disebut register ESP jika digunakan sebagai register 32-bit.

Page 13: Bab III Register Ass

4. Index Pointer RegisterRegister IP berpasangan dengan CS(CS:IP) menunjukkan alamat

dimemory tempat dari intruksi(perintah) selanjutnya yang akan dieksekusi. Register IP juga merupakan register 16 bit. Pada prosesor 80386 digunakan register EIP yang merupakan register 32 bit.

5. Flags Register.Sesuai dengan namanya Flags (Bendera) register ini menunjukkan

kondisi dari suatu keadaan< ya atau tidak >. Karena setiap keadaan dapat digunakan 1 bit saja, maka sesuai dengan jumlah bitnya, Flags register ini mampu memcatat sampai 16 keadaan dan register EFLAG (32-bit) yaitu extended FLAG terdapat dalam mikroprocessor 80386 ke atas . Adapun flag yang terdapat pada mikroprosesor 8088 keatas adalah :

Page 14: Bab III Register Ass

3131 2121 2020 1919 1818 1717 1616 1414 1313 1212 1111 1010 99 88 77 66 44 22 00

IDID VIFVIF VIFVIF ACAC VMVM RTRT NTNT IOP IOP 11

IOP IOP 00

OO DD II TT SS ZZ AA FF CC

8086 / 8088 / 8018 / 80188

80286

80386 / 80486DX

80486SX

PENTIUM

EFLAG dan FLAG count register untuk seluruh kerabat mikroprcessor 80x86 dan pentium.

Page 15: Bab III Register Ass

C (carray) : carry menyimpan carry setelah penambahan, atau borrow setelah pengurangan Flag carry juga menunjukkan kondisi error seperti yang diperintahkankan oleh program dan prosedur.

P (Paritas) : Paritas merupakan 0 logika untuk parits ganjil dan 1 logika untuk paritas genap. Paritas adalah jumlah angka satu dalam bilangan yang menyatakan genap atau ganjil. Jika sebuah bilangan terdiri 3 bilangan biner bit satu, maka termasuk paritas ganjil. Jika terdiri dari nol bit satu, maka termasuk paritas genap. Flag paritas jarang ditemukan dalam aplikasi pemrograma modern dan telah diimplementasikan dalam mikroprocessor Intel generasi pertama untuk mengecek data dalam komunikasi data. Dewasa ini pengecekan paritas tidak dilakukan oleh mikroprocessor, tetapi oleh perralatan komunikasi data.

A (Auxiliary Carry) : Carry tambahan (auxiliary carry) menampung carry (carry tengah) setelah penambahan, atau borrow setelah penggurangan antar posisi bit 3 dan 4. Flag bit khusus ini diuji Oleh instruksi DAA dan DAS untuk menyesuaika nilai AL setelah penambahan atau pengurangan satu BCD. Di luar Itu bit flag A tidak dIgunakan oleh mikroprocessor atau instruksi lain.

Z (Zero) : Flag not menunjukkan bahwa jumlah dari suatu operasi arithmatika atau logic adalah nol. Jika Z=1, jumlahnya adalah nol, jika Z=0 maka jumlahnya adalah bukan nol.

Page 16: Bab III Register Ass

S (Sign) : Flag tanda akan menampung tanda arithmatika dari asil setelah instruksi arithmatika atau instruksi logik dieksekusi. Jika S = 1, tanda bit negatif, jika S = 0, tanda bit positif.

T (Trap) : Flag trap memungkinkan trapping melalui suatu chip debugging, (suatu program di debug untuk mencari error atau bug). Jika falag T enabel (=1), mikroprocessor akan menghentikan alur program pada keadaan yang diindikasikan oleh register debug dan register control. Jika flag T nya nol logik, fitur terappingnya (debagging) adaalh disable. Program Code View dapat menggunakan fitur trap dan register debug untuk mendebug kesalahan software.

I (Interrupt) : Flag interrupt ini mengendalikan operasi dari pin input INTR (interrupt request). Jika I = 1 pin INTRnya enabel; jika I = 0 pin INTRnya disable. Kondisi dari bit flag I dikntrol oleh instruksi STI (set I flag) dan CLI ( Clear I Flag).

D (Direction) : Flag arah ini memilih salah satu dari mode penambahan atau pengurangan untuk regiater DI dan/atau register SI selama instruksi string. Jika D = 1, register secara otomatis akan dikurangi; jika D = 0, register secara otomatis akan ditambah. Flag D diset dengan instruksi STD (set direction) dan diclear dengan instruksi CLD (clear direction).

Page 17: Bab III Register Ass

O (Overflow) : Overflow terjadi ketika billangan bertanda ditambah atau dikurang. Suatu overflow menunjukkan hasilnya melebihi kapasitas dari mesin. Contohnya jika 7Fh (+127) ditambah, dengan menggunakan penambahan 8 bit, mka pada O1h (+1) hasilnya adalah 80h (-128). Hasil ini meunjukkan suatu kondisi overflow yang ditunjukkan oleh flag overflow untuk penambahan bertanda. Untuk operasi tak bertanda, flag overflow diabaikan.

IOPL (I/O Privilege Level) : IOPL digunakan dalam operasi untuk memilih tingkatan operasi istimewa untuk piranti I/O. Jika arus tingkatan istimewa lebih tinggi atau lebih menjamin daripada IOPL, eksekusi I/O berjalan tanpa gangguan. Jika IOPL lebih rendah dari tingkatan istimewa sekarang, terjadi suatu interrupt yang menyebabkan eksekusi tertunda. Perlu diperhatikan bahwa IOPL 00 paling tinggi atau paling menjamin, sedangkan IOPL 11 adalah yang paling rendah atau paling tak terpercaya.

NT (Nested Task) : Flag NT menandakan bahwa task yang dilasanakn bersarang dalam task yang lain dalam operasi mode terlindung. Flag ini diset ketika task di nest oleh perangkat lunak.

RF (Resume) : Flag resume digunakan bersama dengan bugging untuk mengontrol kelanjutan eksekusi setelah instruksi berikutnya.

Page 18: Bab III Register Ass

VM (Virtual Mode) : Bit flag VM memilih operasi mode virtual dalam suatu sistem. Suatu sistem mode virtual memngkinkan partisi memori dari DOS yang panjangnya 1 MB hadir bersamaan dalam sistem memori. Pada dasarnya, model ini memampukan program sistem mengeksekusi lebih dari satu program DOS.

AC (Aligment Check) : Bit flag AC aktif jika suatu word atau doubleword dialamatkan pada batas suatu nonword atau nndoubleword. Hanya mikroprocessor 80486SX berisi bit AC yang umum digunakan oleh processor numerik 80486SX pendampingnya untuk sinkronisasi.

VIF ( Virtual Interrupt Flag) : VIF adalah suatu salinan bit flag interrupt yang digunakan pada procesor Pentium atau pentium Pro.

VIP (Virtual Interrupt Pending) : VIP menyediakan informasi tentang suatu interrupt mode interrupt virtual untuk mikroprocesssor Pentium. Ini digunakan dalam pemakaian multitasking untuk memberikan flag virtual intrerrupt pada sistem operasi.

ID (Indentification) : Flag ID menunjukkan bahwa mikroprocessor pentium mendukung instruksi CPUID. Instruksi CPUID memberikan informasi tentang mikroprocessor, sesuai dengan versi dan nomor seri dari pabriknya, pada sistem.

Page 19: Bab III Register Ass

SEGMEN DAN OFFSETSEGMEN DAN OFFSETKombinasi dari alamat segmen dan alamat offset mengakses lokasi memori pada mode real. Semua alamat memori mode real terdiri dari alamat segmen dan offset

Alamat segmen berada dalam satu register segmen, menetapkan alamat awal dari segmen memori 64k byte.

Alamat offset memilih sembarang lokasi yang memiliki segmen memori 64 Kb.

Dapat di asumsikan register segmen berisi suatu alamat 1000h, tetapi ketika dikonversi alamat ini memiliki segmen awal pada lokasi 1000h. Dalam model real masing-masing register segmen diberi tanda 0h di bagian akhir sebelah kanan. Sebagai contoh :

Alamat relatif : 1357h:2468h 1356h:2478h

13570 13560 2468 2478

------- -------Alamat absolut : 159D8h 159D8h

Page 20: Bab III Register Ass

Kombinasi alamat segmen dan offset 16 bit default untuk mikroprocessor 8086 – pentium, dirangkum dalam tabel berikut :

Register segmenRegister segmen OffsetOffset TujuanTujuan

CSCS IPIP Alamat InstruksiAlamat Instruksi

SSSS SP atau BPSP atau BP Alamat StackAlamat Stack

DSDS BX, DI, SI, bilangan 8 BX, DI, SI, bilangan 8 bit atau 16 bitbit atau 16 bit

Alamat DataAlamat Data

ESES DI untuk instruksi DI untuk instruksi stringstring

Alamat Tujuan stringAlamat Tujuan string

Page 21: Bab III Register Ass

Kombinasi alamat segmen dan offset 32 bit default untuk mikroprocessor 8086-pentium, yang dirangkum dalam tabel berikut :

Register segmenRegister segmen OffsetOffset TujuanTujuan

CSCS EIPEIP Alamat InstruksiAlamat Instruksi

SSSS ESP atau EBPESP atau EBP Alamat StackAlamat Stack

DSDS EBX,EDI,ESI, bilangan EBX,EDI,ESI, bilangan 8 bit atau 32 bit8 bit atau 32 bit

Alamat DataAlamat Data

ESES EDI untuk instruksi EDI untuk instruksi stringstring

Alamat Tujuan stringAlamat Tujuan string

FSFS Tanpa defaultTanpa default Alamat umumAlamat umum

GSGS Tanpa defaultTanpa default Alamat umumAlamat umum

Page 22: Bab III Register Ass

Untuk mempresentasikan mode pengalamatan data, maka kita pilih instruksi MOV sebagai landasan dasar untuk menerangkan mode pengalamatan data, sebagai berikut :

TipeTipe InstruksiInstruksi SumberSumber Pembangkit Pembangkit alamatalamat

Tujuan Tujuan

RegisterRegister Mov AX,BXMov AX,BX Register BXRegister BX Regiater AXRegiater AX

ImmediateImmediate Mov CH,3AHMov CH,3AH Data 3AHData 3AH Register CHRegister CH

DirectDirect Mov Mov [1234H],AX[1234H],AX

Regiater AXRegiater AX DSx10H+DISP DSx10H+DISP 10000+1234H10000+1234H

Alamat memori Alamat memori 11234H11234H

Register tidak Register tidak langsunglangsung

Mov [BX],CLMov [BX],CL Register CLRegister CL DSx10H+BX DSx10H+BX 10000H+0300H10000H+0300H

Alamat memori Alamat memori 10300H10300H

Base-plus indexBase-plus index Mov Mov [BX+SI],BP[BX+SI],BP

Register BPRegister BP DSx10H+BX+SI DSx10H+BX+SI 10000H+0300H+10000H+0300H+0200h0200h

Alamat memori Alamat memori 10500H10500H

Register relatifRegister relatif Mov CL,[BX+4]Mov CL,[BX+4] Alamat memori Alamat memori 10304H10304H

DSx10H+BX+4 DSx10H+BX+4 10000H+0300H+10000H+0300H+44

Registe CLRegiste CL

Base realtif plus Base realtif plus indexindex

Mov Mov Array[BX+SI],DXArray[BX+SI],DX

Register DXRegister DX DSx10H+Array+DSx10H+Array+BX+SI BX+SI 10000H+1000H+10000H+1000H+0300H+0200H0300H+0200H

Alamat memori Alamat memori 11500H11500H

Index berskalaIndex berskala Mov Mov [EBX+2xESI],AX[EBX+2xESI],AX

Register AXRegister AX DSx10H+EBX+2xDSx10H+EBX+2xESIESI10000+00000300010000+000003000H+00000400HH+00000400H

Alamat memori Alamat memori 10700H10700H

Page 23: Bab III Register Ass

RINGKASANRINGKASAN1.1. Model pemrograman pada mikroprocessor 8086 sampai Model pemrograman pada mikroprocessor 8086 sampai

80286 terdiri dari register 8-bit dan register 16-bit. Model 80286 terdiri dari register 8-bit dan register 16-bit. Model pemrograman pada mikroprocessor 80386 dan versi pemrograman pada mikroprocessor 80386 dan versi diatasnya terdir dari register 8-bit, register 16-bit, dan diatasnya terdir dari register 8-bit, register 16-bit, dan register 32-bit serta register segmen 16-bit tambhan :FS dan register 32-bit serta register segmen 16-bit tambhan :FS dan GS.GS.

2.2. Register 8-bit adalah AH,AL,BH,BL,CH,CL,DH dan DL. Regiater Register 8-bit adalah AH,AL,BH,BL,CH,CL,DH dan DL. Regiater 16-bit adalah AX.BX,CX,DX,SP,BP,DI DAN SI. Register segmen 16-bit adalah AX.BX,CX,DX,SP,BP,DI DAN SI. Register segmen adalah CS,DS,ES,SS,FS dan GS. Register 32 –bit extend adalah CS,DS,ES,SS,FS dan GS. Register 32 –bit extend adalah EAX,EBX,ECX,EDX,ESP,EBP,EDI,dan ESI. Di samping adalah EAX,EBX,ECX,EDX,ESP,EBP,EDI,dan ESI. Di samping itu, mikroprocessor memiliki sebuah petunjuk instruksi itu, mikroprocessor memiliki sebuah petunjuk instruksi (IP/EIP) dan register flag (FLAGS dan EFLAGS).(IP/EIP) dan register flag (FLAGS dan EFLAGS).

3.3. Semua alamat memori mode real merupakan dari sebuah Semua alamat memori mode real merupakan dari sebuah alama segmen ditambah sebuah alamat offset. Lokasi awal alama segmen ditambah sebuah alamat offset. Lokasi awal dari sebuah segmen ditentukan oleh bilangan 16-bit dalam dari sebuah segmen ditentukan oleh bilangan 16-bit dalam register yang ditambah dengan nol heksadesimal pada digit register yang ditambah dengan nol heksadesimal pada digit yang paling kanan. Alamat offset merupakan bilangan 16-bit yang paling kanan. Alamat offset merupakan bilangan 16-bit ditambah dengan alamat segmen 20-bit untuk membentuk ditambah dengan alamat segmen 20-bit untuk membentuk alamat memori mode real.alamat memori mode real.

4.4. Semua instrusi (kode) diakses oleh kombinasi dari CS (alamat Semua instrusi (kode) diakses oleh kombinasi dari CS (alamat segmen) ditambah IP atau EIP (alamat offset).segmen) ditambah IP atau EIP (alamat offset).

Page 24: Bab III Register Ass

5.5. Data secara normal dirujuk melalui kombinasi dari Data secara normal dirujuk melalui kombinasi dari DS (segmen data), dan alamatoffset atau isi regster DS (segmen data), dan alamatoffset atau isi regster yang terdiri dari alamat offset. 8086 sampai yang terdiri dari alamat offset. 8086 sampai pentium II menggunakan BX, DI dan SI sebagai pentium II menggunakan BX, DI dan SI sebagai register offset default untuk data jika register 16-register offset default untuk data jika register 16-bit dipilih 8036 dan versi diatasnya dapat bit dipilih 8036 dan versi diatasnya dapat menggunakan register 32-bit EAX,EBX,ECX,EDX, menggunakan register 32-bit EAX,EBX,ECX,EDX, dan ESI sebagai register offset default dari data. dan ESI sebagai register offset default dari data.

Page 25: Bab III Register Ass

DALAM DIRI TERDAPAT SIFAT YANGDALAM DIRI TERDAPAT SIFAT YANGMEMUNGKINKAN UNTUK BERUBAHMEMUNGKINKAN UNTUK BERUBAH

HANYA ADA DUA PERUBAHANHANYA ADA DUA PERUBAHANBAIKBAIK ATAU ATAU BURUKBURUK

BELAJAR UNTUK MEMBUAT BELAJAR UNTUK MEMBUAT FILOSOFFILOSOFDALAM HIDUP MU DALAM HIDUP MU

AGAR KAMU TAHU MAKNA HIDUP MUAGAR KAMU TAHU MAKNA HIDUP MUDIANTARA BERJUTA MAKHLUK CIPTAAN DIANTARA BERJUTA MAKHLUK CIPTAAN

TUHANTUHAN

CC FILE BY @MAN_TO_FRIENDS