Anda di halaman 1dari 26

I.

JUDUL REGISTER / MEMORY

II .

ALAT DAN BAHAN Seperangkat Midicom, yang terdiri dari : 1. Monitor 2. Papan tombol 3. CPU (Central Processing Unit) 8085

III. DASAR TEORI Macam-macam Register


Register 8 Bit Accumulator Register B Register D Register H * Processor Status Word Register Bendera Register C Register E Register L Register 16 Bit PSW* Register Pair BC Register Pair DE Register Pair HL Program Counter Stack Pointer

Gambar 2.1 Macam Register Mikroprosesor 8085 mempunyai bermacam-macam register, berkapasitas 8 bit dan apabila dua buah register digabungkan dapat membentuk sebuah pasangan register dengan kapasitas 16 bit. Disamping itu tersedia pula register dengan kapasitas khusus 16 bit. Tiap register mempunyai fungsi khusus yang tidak dipunyai oleh register lain, namun semuanya merupakan tempat penyimpanan data sementara dalam suatu rutin program. Fungsi khusus masing-masing register dapat dijelaskan sebagai berikut:

Register A Register ini dikenal juga dengan nama Akumulator, fungsinya sebagai tempat menyimpan data pada perhitungan matematika, logika, dan proses

pembacaan/pengisian data pada memori. Disamping itu, pada perintah masukan/keluaran, perbandingan, pergeseran data juga disimpan pada akumulator. Lebih rinci penggunaan register ini akan dibahas pada bab berikutnya saat membahas perintah CPU 8085. Register F Register ini berfungsi sebagai bendera pada operasi logika, aritmatika, pergeseran, perbandingan dan lain-lain. Tiap bitnya mempunyai fungsi tersendiri. Bit tersebut digunakan sebagai penanda pada rutin percabangan. Secara rinci register bendera akan dijelaskan pada percobaan 3. Register bendera bersama-sama dengan Akumulator disebut PSW (Processor Status Word), yaitu sebuah register dengan kapasitas 16 bit. Register B, C, D, E, H, L Register ini berfungsi sebagai tempat penyimpanan sementara data 8 bit pada proses pemrograman. Register ini jika dipasangkan seperti terlihat pada Gambar 2.1 akan membentuk suatu register dengan kapasitas 16 bit dan disebut sebagai pasangan register, fungsinya selain sebagai tempat penyimpanan data 16 bit, juga dapat digunakan sebagai penunjuk suatu alamat memori, misalnya pasangan register HL sebagai penunjuk alamat memori register M. Register PC (program counter)

Program Counter merupakan penunjuk alamat perintah yang akan dijalankan oleh CPU. Pasangan register ini akan bertambah nilainya secara otomatis sesuai dengan alamat perintah yang akan dijalankan berikutya. Register SP (stack pointer) Register ini berfungsi sebagai penunjuk alamat memori, yaitu tempat menyimpan alamat kembali untuk perinta CALL dan tempat menyimpan data pada perintah PUSH-POP. Keterangan lebih jelas tentang register ini akan dibahas pada percobaan 7. Register M (memori) Register ini sebetulnya adalah memori, karena penunjukkan data pada memori harus berdasarkan alamatnya, maka pada register M ini penunjukkan alamatnya ditentukan oleh isi pasangan register HL. Memori Seperti yang telah dibahas pada percobaan I, memori penunjang CPU 8085 pada Midicom terdiri dari EPROM (@0000-@3FFF) dan RaM (@6000-@FFFF). Karena RAM pada lokasi @6000-@6FFF digunakan untuk cadangan memori bagi Midicom, maka untuk amannya penulisan program dimulai pada @7000. Memori dengan alamat @7000 FFFF (RAM) disamping dapat digunakan sebagai tempat menyimpan program, digunakan pula untuk menyimpan data. Perintah Pemindahan Data 1. MVI r1,d8 Move immediate yaitu memindahkan secara langsung data 8 bit (d8) ke suatu register r1. Register r1 meliputi register 8 bit yaitu A,B,C,D,E,H,L dan M.

2. MOV r1,r2 Mov data yaitu perintah untuk memindahkan suatu data dari register ke register, register memori atau sebaliknya dari memori ke register Data dipindahkan/diduplikatkan dari operand 2(r2) ke operand 1 (r1). Sama seperti perintah MVI, maka r1 dan r2 merupakan register 8 bit 3. LXI rp, d16 Load register pair immediate, yaitu mengisikan data 16 bit ke pasangan register secara langsung. Perintah yang berhubungan dengan pasangan register selalu ditandai dengan menggunakan huruf X kecuali pada perintah XRA,XRI. 4. XCHG Exchange digunakan untuk menukar data pada pasangan register DE dengan HL. Data pada E ditukar dengan data pada L sedangkan data pada D di tukar dengan H 5. LDA Adt Load accumulator direct, mengirimkan data dari memori dengan alamat Adr ke akumulator. Perintah ini di gunakan untuk membaca data pada suatu lokasi memori dengan alamat di tunjukkan secara langsung bersama kode operasinya. 6. STA Adr Store accumulator direct, perintah ini mempunyai suatu fungsi mengrim data dari akumulator ke memori dengan alamat Adr. Perintah LDA Adr dan STA Adr merupakan perintah dengan model pengalamatan lansung artinya alamat memori yang merupakan tujuan ataupun asal pengiriman data ikut dituliskan dalam progam 7. LHLD Adr Load H & L direct, perintah ini mirip dengan LDA Adr, yaitu membaca data dari memori dengan pengalamatan langsung dan kirimkan ke suatu register. Perbedaan antara keduanya adalah kapasitas data yang dibaca, disini data yang dikirimkan adalah 16 bit atau 2 byte

8. SHLD Adr Store H & L direct, kebalikan perintah LHLD Adr, perintah ini akan mengirimkan data 2 byte ke memori dengan alamat Adr yaitu data pada register L dikirim ke alamat Adr dan data register H dikirim ke alamat Adr+1 9. LDAX rp Load accumulator indirect , yaitu mengisi akumulator dengan data dari memori yang alamatnya di tunjukkan oleh isi pasangan register (rp). Perintah ini mirip dengan LDA Adr hanyan saja alamt memori tidak di berikan secara langsung mengikuti kode operasinya, tettapi melalui perantara register 10. STAX rp Store acumulator indirect kalau LDAX rp berfungsi untuk mengisi akumulator. STAX rp berfungsi untuk memori dengan alamat ditunjukkan oleh pasangan register (rp) dengan data yang ada pada akumulator

IV. Langkah Percobaan dan hasil percobaan 1. MVI r1,d8 -A = assembler Adr = 8000 Mnemonics MVI L,00 MVI H,80 MVI M,CC RST 1

Isi alamat awal :

[M]@8000

2E

ketika program di [GO]

Isi alamat setelah di [GO] :

[M]@8000

CC

2. MOV r1,r2 -A = assembler Adr = 7006 7100 Adr 7000 7102 7104 7105 7107 7109 710A Hex-code 2E 00 26 80 7E 2E 01 26 80 77 CF Mnemonics MVI L,00 MVI H,80 MOV A,M MVI L,01 MVI H,80 MOV M,A RST 1

- T = trace/single step start Adr.: = 710A 7100


PC 7100 7102 7104 7105 7107 7109 2E 00 26 80 7E 2E 01 26 80 77 MVI L,00 MVI H,80 MVI A,M MVI L,01 MVI H,80 MVI M,A RST 1 7102 7104 7105 7107 7109 A 64 64 BC DE HL M F 54 54 54 54 54 54 54 SZxAxPxC ZAP ZAP ZAP ZAP ZAP ZAP ZAP SP 60CE 60CE 60CE 60CE 60CE 60CE (SP) 7007 7007 7007 7007 7007 7007

0000 0101 8000 AA 0000 0101 8000 AA

AA 0000 0101 8000 AA AA 0000 0101 8001 11 AA 0000 0101 8001 11

710A AA 0000 0101 8001 AA 0008 AA 0000 0101 8001 AA

710A CF

60CC 710B

Isi data awal pada :

[M]@8000 di [GO]

CC dan [R]A = 64 ketika program

Isi alamat setelah di [GO] :

R]A = CC

3. LXI rp, d16 -A = assembler Adr = 710B 7200 Adr 7200 7203 7206 7209 Hex-code 21 0080 01 0180 11 80 CF Mnemonics LXI H,8000 LXI B,8001 LXI D,8002 RST 1

-T = Trace /single step Start Adr.: 8005 7200


PC A BC DE HL M 00 00 00 00 F 54 54 54 54 SZxAxPxC ZAP ZAP ZAP ZAP SP (SP)

7200 7203 7206 7209

21 0080 01 0180 11 80 CF

LXI H,8000 7203 64 LXI B,8001 7206


64 64 64

0000 0101 8000 8001 0101 8000 8001 8002 8000 8001 8002 8000

60D0 4545 60D0 4545 60D0 4545 60D0 4545

LXI D,8002 7209 RST 1


0088

Isi data awal pada :

[R] [H] = L = BB, H= 61 [R] [B] = B = 00, C= 00 [R] [D] = D = 01 , E= 01, ketika program di [GO]

Isi alamat setelah di [GO] :

[R]H = 80 dan [R]L= 00

4. XCHG -A = assembler Adr = 8000 Mnemonics LXI D,9000 MVI B,AA MVI C,CC XCHG RST 1

Isi data Register awal :[R]DE 9000 dan [R]B AA, [R]C CC ketika program di [GO] Isi data setelah di [GO] :- Isi Data [R] D menjadi AA dan Isi Data [R] B menjadi 90 - Isi Data [R] E menjadi CC dan Isi Data [R] C menjadi 00

5. LDA Adr -A = assembler Adr = 7400 Mnemonics LDA 8000 LXI H,8002 MOV M,A RST 1 Isi data awal : @8000 CC dan [R] A = 64

ketika program di [GO]: 6. STA Adr -A = assembler Adr = 7408 7500 Adr 7500 7503 7506 7509 750C

[R] A = CC

Hex-code 3A 0070 32 0380 3A 0170 32 0480 CF

Mnemonics LDA 7000 STA 8003 LDA 7001 STA 8004 RST 1

-T = Trace /single step Start Adr.: 7408 7500

PC

A 2E 2E 00 00 00

BC 0000 0000 0000 0000 0000

DE 0101 0101 0101 0101 0101

HL 8200 8200 8200 8200 8200

M AA AA AA AA AA

F 54 54 54 54 54

SZxAxPxC ZAP ZAP ZAP ZAP ZAP

SP

(SP)

7500 7503 7506 7509 750C

3A 0070 32 0380 3A 0170 32 0480 CF

LDA 7000 STA 8003 LDA 7001 STA 8004 RST 1

7503 7506 7509 750C


0008

60CA 7408 60CA 60CA 60CA 60CB 7408 7408 7408 750D

Isi data awal :[R] A = 64 dan [M] @8003 2E, ,ketika program di [GO]

Isi data setelah di [GO] :

[M] @8003 64

7. LHLD Adr -A = assembler Adr = 750D 7600 Adr 7600 7603 7606 7609 760A 760D Hex-code 21 0000 11 CCAA 2A 0080 EB 2A 028 CF Mnemonics LXI H,0000 LXI D,AACC LHLD 8000 XCHG LHLD 8002 RST 1

-T = Trace /single step Start Adr.: 0008 7600


PC A 00 00 00 BC DE HL 0000 0000 AAAA M AF AF 9C 61 2A 2A F 54 54 54 54 54 54 SZxAxPxC ZAP ZAP ZAP ZAP ZAP ZAP SP (SP)

7600 7603 7606 7609

21 0000 11 CCAA 2A 0080 EB

LXI H,0000

7603

0000 0101 0000 0000 AACC AACC

60CB 7500 60CB 60CB 60CB 60CB 60C6 7500 7500 7500 7500 760E

LXI D,AACC 7606 LHLD 8000 XCHG LHLD 8001 RST 1 7609

760A 00 0000 AAAA AACC 760D 00 0000 AAAA


0008 00 0000 AAAA 2EAA 2EAA

760A 2A 028 760D CF

Isi data awal :

[M]@8000 = 06 [M]@8001 = 07 [R]H = 80 [R]L = 00 ketika program di [GO]

Isi data setelah di [GO] :

[R]H = 07 [R]L = 06

8. SHLD Adr -A = assembler Adr = 760E 7700 Adr 7700 7703 7706 7709 770C Hex-code 2A 0080 22 0580 2A 0380 22 0780 CF Mnemonics LHLD 8000 SHLD 8005 LHLD 8003 SHLD 8007 RST 1

-T = Trace /single step Start Adr.: 617E 7700

PC

A FF

BC FF70

DE 3322

HL 1100

M 1D

F 54

SZxAxPxC ZAP

SP 60C4

(SP) 8005

7700

2A 0080

LHLD 8000

7703

7703 7706 7709

22 0580 2A 0380 22 0780

SHLD 8005 LHLD 8003 SHLD 8007 RST 1

7706 7709

FF FF

FF70 FF70

3322 3322 3322 3322

1100 FF32 FF32 FF32

1D 61 61 61

54 54 54 54

ZAP ZAP ZAP ZAP

60C4 60C4 60C4 60C4

8005 8005 8005 770D

770C FF FF70
0008 FF FF70

770C CF

Isi data awal :

[M]@8000 = 01 [M]@8001 = 02 [R]D = AA [R]E = FF ketika program di [GO]

Isi data setelah di [GO] :

[M]@8000 = AA [M]@8001 = FF

9. LDAX -A = assembler Adr = 770D 7800 Adr 7800 7803 7804 7806 7808 7809 Hex-code 21 0080 46 16 80 1E 03 1A CF Mnemonics LXI H,8000 MOV B,M MVI D,80 MVI E,03 LDAX RST 1

-T = Trace /single step

Start Adr.: 0008 7800

PC

A FF FF FF FF 33 33

BC 0000 0000 0000 0000 0000 0000

DE 3322 3322 8022 8003 8003 8003

HL 8000 8000 8000 8000 8000 8000

M 00 00 00 00 00 00

F 54 54 54 54 54 54

SZxAxPxC ZAP ZAP ZAP ZAP ZAP ZAP

SP 60C2 60C2 60C2 60C2 60C2

(SP) 770D 770D 770D 770D 770D

7800 7803 7804 7806 7808 7809

21 0080 46 16 80 1E 03 1A CF

LXI H,8000 MOV B,M MVI D,80 MVI E,03 LDAX RST 1

7803 7804 7806 7808 7809


0008

60CD 780A

Isi data awal :

[M]@8003 = 01 [R]B = 00 ketika program di [GO]

Isi data setelah di [GO] :

[R]B = 01

10. STAX Adr -A = assembler Adr = 780E 7900 Adr 7900 7903 7905 7907 7908 Hex-code 11 0080 16 08 0E 03 1D 02 Mnemonics LXI D,8000 MVI D,80 MVI C,03 LDAX D STAX B

7909

CF

RST 1

-T = Trace /single step Start Adr.: 8004 7900


PC A 00 00 00 00 00 00 BC 8003 8003 8003 8003 8003 8003 DE 8000 8000 8000 8000 8000 8000 HL 8000 8000 8000 8000 8000 8000 M 00 00 00 00 00 00 F 54 54 54 54 54 54 SZxAxPxC ZAP ZAP ZAP ZAP ZAP ZAP SP 60C0 60C0 60C0 60C0 60C0 60BE (SP) 780A 780A 780A 780A 780A 790A

7900 7903 7905 7907 7908 7909

11 0080 16 08 0E 03 1D 02 CF

LXI D,8000 MVI D,80 MVI C,03 LDAX D STAX B RST 1

7903 7905 7907 7908 7909


0008

Isi data awal :

[M]@8003 = 03 [R]D = 00 ketika program di [GO]

Isi data setelah di [GO] :

[M]@8003 = 03 [R]D = 03

V.

DATA PERCOBAAN 1. MVI r1.d8 - A = Assembler Adr = 8002 7500 Adr Hex- code 7000 7002 7004 7006 Mnemonics MVI L,00 MVI H,80 MVI M,AA RST 1

2E 0070 36 0380 36 0170 CF

M =read / set memory Start Adr. = 8000 8000 01 8001 AA

G = Go Start adr. = 7000 Pc 7600 A 64 BC DE HL 8000 M AA F 54 SzxAxpxs zap sp 60D0 <sp> E366

0000 0101

M =read / set memory Start Adr. = 8000 8000 AA

2. MOV r1,r2 - A = Assembler Adr = 7100 Adr 7100 7102 7104 7105 7107 7109 710A Hex- code 2E 00 2E 80 7E 2E 01 26 80 77 CF Mnemonics MVI L,00 MVI H,80 MOV A,M MVI L,01 MVI H,80 MOV M,A RST 1

M =read / set memory Start Adr. = 8000 8000 01 8001 01 8002 AA

R = Read / set register Register = A A = 64 B = 00

G = Go Start adr. = 7100

Pc 710A -

A 01

BC

DE

HL 8001

M 01

F 54

SzxAxpxs zap

sp 60D0

<sp> E366

0000 0101

M =read / set memory Start Adr. = 8000 8000 01 8001 01 8002 AA

R = Read / set register Register = A A = 01 B = 00

3. LXI rp,d16 - A = assembler Adr = 7200 Adr Hex- code 7200 7203 7206 7209 21 Mnemonics 0080 LXI H,8000 LXI B,8001 LXI D,8002 RST 1

01 0180 11 0280 CF

M =read / set memory Start Adr. = 8000 8000 01 8001 01 8002 AA

4. XCHG - A = assembler Adr = 7300 Adr Hex- code 7300 7303 7305 7307 21 Mnemonics 0000 LXI H,8000 MVI D,00 MVI E,EE XCHG

1E 00 1E EE EB

7308

CF

RST 1

- T = Trace/ single step Start Adr. : = 7300 DE 7300 7303 7305 7307 7308 8000 DD00 HL 8000 8000

DDEE 8000 8000 DDEE

5. LDA Adr - A = assembler Adr = 7400 Adr 7400 7403 7406 7407 Hex- code 3A 21 77 CF 0080 0280 Mnemonics LDA 8000 LXI H,8001 MOV M,A RST 1

M =read / set memory Start Adr. = 8000 8000 AF 8001 01 8002 FF 8003 01

R = Read / set register Register = A A = 64 B = 00

G = Go Start adr. = 7400 Pc 7407 A BC DE HL 8002 M AF F 54 SzxAxpxs zap sp 60D0 <sp> E366

AF 0000 0101

M =read / set memory Start Adr. = 8000

8000 AF 8001 01 8002 AF 8003 01 R = Read / set register Register = A A = AF B = 00

6. STA Adr - A = Assembler Adr = 8002 Adr 7500 7503 7506 7509 7500 Mnemonics LDA 7000 STA 8003 LDA 7001 STA 8004 RST 1

Hex- code 3A 0070 32 0380 3A 0170 32 0480

750C CF -

R = Read / set register Register = A A = 64 B = 00

M = read / set memory Start Adr. = 8003 7000 7000 FF

M =read / set memory Start Adr. = 7000 8003 8003 46 8004 16

G = go Start Adr. = 716A 7500 Pc A BC DE HL 61B3 M 00 F 54 SzxAxpxs zap sp 00D0 <sp> c766

750c 00

0000 0101

M =read /set memory Start Adr. = 7000 8003 8003 8004 FF 00

7. LHDH Adr - A = assembler Adr = 740C Adr 7600 7603 7606 7609 760A 760D 7600 Mnemonics LXI H,8000 LXI D,ABCC LHLD 9002 XCHG 8004 LHLD 9002 RST 1

Hex- code 21 0080

11 CCAA 2A 0090 EB 2A 0290 CF

R= read / set register Register = L L = B3 F = 54 S = 60D0 P = 750C A = 64 H = 61

G = go Start adr. = 7600 Pc 760d A 64 BC DE HL 7100 M 1D F 54 SzxAxpxs zap sp 60D0 <sp> E366

0000 0021

R = read / set register Register = L L = 00 H = 11

M = read / set memory Start adr. = 8000 8000 06

8001 05 M = read/set memory Start adr.= AACC AACC 61

8. SHLD - A = Assembler Adr = 7605 Adr 7700 7703 7706 7709 770C 7700 Mnemonics LHLD 8000 SHLD 8005 LHLD 8003 SHLD 8007 RST 1

Hex- code 2A 0080 22 0580 2A 0380 22 0780 CF

M = read/set memory Start adr. = 8000 8000 06 8001 05 8002 80 8003 FF 8004 00 8005 21 8006 00 8007 46

R = read/ set register Register = L L= 00 H= 11 G= Go Start Adr. =760D 7700 Pc A BC DE HL 00FF M F1 F 54 SzxAxpxs zap sp 60D0 <sp> E366

770c 64 -

0000 0021

R = read / set register Register = L

L = FF H = 00 9. LDAX - A = Assembler Adr = 7700 7800 Adr 7800 7803 7804 7806 7808 7809 Hex- code 21 0080 46 16 80 1E 03 1A CF Mnemonics LXI H, 8000 MOV B,M MVI D,30 MVI E,03 LDA X RST 1

R = read / set register Register = A A=64

M=Read / set memori Start Adr. = 8000 8003 8003 FF [Esc]

M=Read / set memori Start Adr. = 8000 8000 06

R = read / set register Register = L L = FF H = 00 B = 00 A = 64 D = 00 E = 21

G = Go Start Adr. = 7800

Pc 7809 -

BC

DE

HL 8000

M 06

F 54

SzxAxpxs zap

sp 60D0

<sp> E366

FF 0600 8003

R = read / set register Register = A A = FF B = 06 D = 80 C = 00 E = 03 H = 80 L = 00 F = 54 10 .STAX - A = Assembler Adr = 7900 Adr 7900 7903 7905 7907 7908 7909 Hex- code 11 0080 06 80 DE 05 1A 02 CF Mnemonics LXI D, 8000 MVI B,80 MVI C,03 LDAX D STAX B RST 1

M= Read / set memori Start Adr. = 8000 8000 06 8001 05 8002 80 8003 FF

R = read / set register Register = A A = 64 B = 00 C = 00

D = 01 E = 01 G = Go Start Adr. = 7900 Pc 7909 A 06 BC DE HL 61B3 M 00 F 54 SzxAxpxs zap sp 60D0 <sp> E366

8003 8000

R = read / set register Register = A A = 06 B = 80 C = 03 D = 80 E = 00

VI. ANALISA Nama Kelas : SRI LIAWATI : 4EEA

1. MVI r1,d8 Perintah ini bekerja untuk mengubah isi data pada suatu alamat. Dapat dilihat pada percobaan ini, isi data pada alamat awal 8000 adalah 01. M : Read / set memory Start Adr.: = 8000 8000 01 8001 AA Karena perintah MVI M,AA memori data pada alamat 8000 diubah dari 01 menjadi AA.

2. MOV r1,r2 Pada percobaan ini perintah MOV r1,r2 berfungsi untuk memindahkan data dari memori ke register atau sebaliknya. Dapat dilihat dari percobaan tersebut,data dipindahkan dari alamat 8000 ke register A. dengan alamat awal 8000 yang berisi memori data 01 dan register A=64 , karena fungsi perintah MOV sehingga dihasilkan pada register A berubah menjadi A= 01. -M : rear/ set memory

Start Adr.: = 8000 8000 01 -R : read/set register Register = A A= 64 B = 00 -R : read/set register Register = A A= 01 B= 00 3. LXI rp, d16 Perintah LXI berfungsi mengisikan data 16 bit pada pasangan register secara langsung. Program awal : -A= assembler Adr.= 7200 Adr 7200 7203 7206 7209 Hex- Code 21 01 11 CF 0080 0180 0280 Mnemonics LXI H, 8000 LXI B, 8001 LXI D, 8002 RST 1 perubahan pada register A isi data awal register A isi data alamat awal 8000

Ketika dijalankan perintah Trace maka register H pada alamat 7203 berisi data 8000 ,register B pada alamat 7206 berisi data 8001. Dan register D pada alamat 7209 berisi data 8002. 4. XCHG Perintah ini digunakan untuk menukar isi data pada pasangan register ke pasangan register lain. Dalam percobaan ini data yang ditukar yaitu pada pasangan register DE dan HL. Pasangan register DE berisi data DDEE, pasangan register HL berisi data 8000. Ketika program dijalankan data pada register D saling menukar dengan data pada register H dan data pada register E saling menukar dengan data pada register L.

5. LDA Adr Ketika program ini dijalankan maka perintah LDA mengirim data dari memori dengan alamat 8000 ke akumulator. Isi memori pada alamat 8000 adalah AF dan pada alamat yang sama register A = 64,maka isi memori pada alamat 8000 yaitu AF dikirim ke register A sehingga data pada register A menjadi AF. 6. STA Adr. Pada saat program dijalankan isi memori pada 8300 diubah isi datanya sama dengan isi data pada suatu register misalnya register A = 01 maka isi memori 8300 diubah menjadi 01. 7. LHLD Adr Perintah ini dapat menjalankan data yang dikirim dengan kapasitas sampai 16 bit atau 2 byte. Perintah ini hamper sama dengan LDA yaitu mengirim data dari memori ke register.

8. SHLD Adr Perintah ini merupakan kebalikan perintah LHLD Adr, yaitu pada perintah LHLD mengirim data drai suatu alamat ke register,sedangkan SHLD dari suatu register ke alamat suatu memori. Isi data pada register H dikirim ke alamat 8000. 9. STAX rp Perintah ini setelah dilakukan percobaan yaitu digunakan untuk mengisi memori dengan alamat yang ditunjukkan oleh pasangan register. STAX ini memasukan isi data pada suatu alamat ke dalam suatu register. 10. LDAX rp Setelah melakukan percobaan, dapat dilihat bahwa LDAX rp digunakan untuk mengisi akumulator dengan data dari suatu alamat memori. Pada keadaan awalnya isi register A= 64 dan isi memori 8000 = 01 , setelah program dijalankan maka isi register A berubah menjadi 01.

. VII. KESIMPULAN 1. Perintah LHLD dan LDA Adr funfsinya mirip,hanya saja kapasitas yang dapat dikirim pada perintah LHLD adalah 16 bit atau 2 byte. 2. Perintah SHLD merupakan kebalikan dari perintah LHLD Adr yaitu SHLD mengirimkan data dari suatu register ke alamat suatu memori sedangkan LHLD mengirimkan data dari suatu alamat ke register. 3. Perintah yang digunakan pada percobaan ini,yaitu : 1. Assembler untuk membuat program 2. Read / set register untuk menampilkan atau mengganti isi suatu register. 3. Read / set memory untuk menampilkan atau mengganti isi suatu memori. 4. Go untuk menjalankan program. 5. Trace untuk menjalankan program langkah demi langkah