You are on page 1of 14

LAPORAN ASSEMBLY

INSTRUKSI LOGIKA
DI

S

U

S

U

N

Oleh:

Nama : Nurul Akmalia

Nim : 1490343077

Kelas : Tmj 2.5

Tgl pengumpulan : 11 November 2015

PROGRAM STUDI TEKNIK MULTIMEDIA DAN JARINGAN
JURUSAN TEKNIK INFORMATIKA KOMPUTER
POLITEKNIK NEGERI LHOKSEUMAWE

RAL. Penulisan program: ANA reg : A and reg ANI data : A and data Tabel 4. Sedangkan instruksi ANI digunakan untuk melakukan operasi AND pada isi register A dengan data.ANI.RLC.RRC.DAN STC.RAR.CPI.XRA. PENDAHULUAN Pada praktikum kali ini menggunakan instruksi logika.ORI.CMP.CMC.CMA. A OR reg ORI data . Penulisan pada program: ORA reg . A OR data Tabel 4.2 Operasi ORA dan ORI Mnemonik Symbol operasi ORA A A = A OR A ORA B A = A OR B ORA C A = A OR C .XRI. Sedangkan instruksi ORI digunakan untuk melakukan operasi logika OR pada isi register A dengan data. Dan penjelasan setiap instruksi yaitu sebagai berikut:  ANA dan ANI Instruksi ANA yaitu isi register A akan di AND-kan dengan isi register yang disebutkan atau isi lokasi memori yang alamatnya ditunjukkan oleh preg register HL.1 Operasi ANA dan ANI Mnemonik Symbol operasi ANA A A = A AND A ANA B A = A AND B ANA C A = A AND C ANA D A = A AND D ANA E A = A AND E ANA H A = A AND H ANA L A = A AND L ANA M A = A AND [(H)(L)] ANI 57h A = A AND 57h  ORA dan ORI Instruksi ORA yaitu isi register A akan di-OR-kan dengan isi register 8 bit atau isi lokasi memori yang alamatnya ditunjukan oleh preg HL.ORA. Dan instruksi-instruksi yang termasuk ke dalam logika yaitu ANA.

ORA D A = A OR D ORA E A = A OR E ORA H A = A OR H ORA L A = A OR L ORA M A = A OR [(H)(L)] ORI 56h A = A OR 56h  XRA dan XRI Instruksi XRA yaitu isi register A akan di-XOR-kan dengan isi register 8 bit atau isi lokasi memori yang alamatnya ditunjukan oleh pasangan register HL. yaitu mengubah setiap bit dalam akumulator dengan nilai kebalikannya. melakukan operasi NOT pada isi register A. Penulisan pada program: CMA . Hasil operasi akan diletakkan kembali ke register A. Penulisan pada program: XRA reg . Dalam operasi logika yaitu melakukan operasi NOT pada isi register A yang berisi data 8 bit. A XOR data Tabel 4. mengisi register A dengan data 12H . Contoh : MVI A 12H .3 Operasi XRA dan XRI Mnemonik Symbol operasi XRA A A = A XOR A XRA B A = A XOR B XRA C A = A XOR C XRA D A = A XOR D XRA E A = A XOR E XRA H A = A XOR H XRA L A = A XOR L XRA M A = A XOR [(H)(L)] XRI 78h A = A XOR 78h  CMA Instruksi CMA (complement the accumulator) digunakan untuk melakukan komplemen isi akumulator. Sedangkan instruksi XRI dipergunakan untuk meng-XOR-kan isi register A dengan data langsung 8 bit (immediate data ). A XOR reg XRI data .

Perintah ini hanya mempengaruhi bit-bit status pada reg dan flag untuk dipakai bersama perintah-perintah bersyarat.reg CPI data . Dengan perintah ini kita bias memastikan bahwa Carry sekarang ini adalah 1. sedangkan instruksi CPI data adalah membandingkan isi reg. CMP reg . Penulisan pada program: CMC .  CMC Instruksi CMC (Complemen Carry Flag). Flag = A .  RRC dan RLC .data  STC STC (Set Carry). Flag = A . Perintah ini digunakan setelah perintah STC untuk memastikan bahwa Bit carry adalah 0 (nol).A dengan isi register yang disebutkan. bit MSB akan dimasukkan ke carry sedangkan isi carry yang sebelumnya dimasukkan ke bit LSB. Karena hanya membandingkan maka isi reg. CMA .Sedangkan instruksi RAL adalah menggeser isi register A ke kiri 1 bit. invers bit carry  RAR dan RAL Instruksi RAR adalah menggeser isi register A ke kanan 1 bit. sehingga hasil eksekusi adalah ED  CMP dan CPI Instruksi CMP reg adalah membandingkan isi reg. melakukan operasi NOT untuk data 12 H. A ataupun isi register bandingannya tidak mengalami perubahan isi/datanya. digunakan untuk meng-inverskan bit carry sebelumnya. adalah instruksi set bit Carry menjadi 1. bit LSB akan dimasukkan ke carry sedangkan isi carry yang sebelumnya dimasukkan ke bit MSB. Penulisan pada program. A dengan data 8 bit yang disebutkan..

bit MSB akan dimasukkan ke carry sedangkan bit MSB akan dimasukkan ke bit LSB. ISI A. Borang data Mnemoni Flag No. bit LSB akan dimasukkan ke carry dan bit LSB akan dimasukkan ke bit MSB. Instruksi RRC adalah menggeser isi register A ke kanan 1 bit. Sedangkan instruksi RLC adalah menggeser isi register A ke kiri 1 bit. Input data A B C D E H L k S Z P Mvi d 00h 0 0 Mvi e 01h 0 0 0 1 Mvi h 02h 0 2 Mvi L 03h 0 3 Mov a d 0 0 Ora e 0 1 Ana h 0 .

0 Xra L 0 3 Tabel 4. Flag Input Mnemonik A B C D E H L A S Z P CY data C Mvi A D4h D 4 LXI B 354Eh 35 4 E LXI D A 3 A239h 2 9 LXI H 8000h 8 0 0 0 ANA B 14 35 4 A 3 8 0 1 1 E 2 9 0 0 ANI 59H 10 35 4 A 3 8 0 1 E 2 9 0 0 ORA C 5E 35 4 A 3 8 0 E 2 9 0 0 ORA D FE 35 4 A 3 8 0 1 E 2 9 0 0 ORA B FF 35 4 A 3 8 0 1 1 E 2 9 0 0 ORA E4h FF 35 4 A 3 8 0 1 1 E 2 9 0 0 XRA H 7F 35 4 A 3 8 0 E 2 9 0 0 XRA L 7F 35 4 A 3 8 0 E 2 9 0 0 XRI 70h 0F 35 4 A 3 8 0 1 E 2 9 0 0 STC 0F 35 4 A 3 8 0 1 1 E 2 9 0 0 CMA F0 1 1 RAL E1 1 1 RAR F0 1 1 RLC E1 1 1 RRC F0 1 1 . 4 Program operasi logika No.

CMP B F0 1 1 Mvi A 2Ah 2 1 1 A LXI B 3343h 2 33 43 1 1 A LXI D 5267h 52 6 1 1 7 LXI H 8003h 8 0 1 1 0 3 ANA B 22 33 43 52 6 8 0 1 1 7 0 3 ANI 59h 00 33 43 52 6 8 0 1 1 7 0 3 ORA C 43 33 43 53 6 8 0 7 0 3 ORA D 53 33 43 53 6 8 0 1 7 0 3 ORA B 73 33 43 53 6 8 0 7 0 3 ORI E4h F7 33 43 52 6 8 0 1 7 0 3 XRA H 77 33 43 52 6 8 0 1 7 0 3 XRA L 74 1 XRI 70h 04 STC 04 1 CMA F 1 B RAL F7 1 RAR F 1 B RLC F7 1 RRC F 1 B CMP B F 1 1 B MVI A 3Bh 3B LXI B 3B C 34 1 1 C134h 1 LXI D 5545h 3B C 34 55 4 1 1 1 5 LXI H 8005h 3B C 34 55 4 8 0 1 1 1 5 0 5 .

Buatlah program untuk menyelesaikan operasi logika untuk data-data heksadesimal yang berada pada register-register D.5 Tugas operasi logika N Output Input Data Perhitungan o Data D E H L A (((D or E) and H)xor L) 1 (A or E) and H ) Xor L (1) And H 00 00 00 00 00 A And H (A=00) Xor 00 A xor L = A= 00 . Tabel 4. H dan L.6 dan tuliskan hasil perhitungan pada tabel tersebut. ANA B 01 1 ANI 59h 01 1 ORA C 35 1 ORA D 75 ORA B F5 1 1 ORI E4h F5 C 34 55 4 8 0 1 1 1 5 0 5 XRA H 75 XRA L 70 XRI 70h 00 1 STC 00 1 1 CMA FF 1 1 RAL FF 1 1 RAR FF 1 1 RLC FF 1 1 RRC FF 1 1 CMP B FF 1 B. Tulis program tersebut mulai dari alamat 0000h. Pertanyaan dan jawaban 1. A ←(( ( D∨E )∧H )xor L) Uji program saudara menggunakan data-data pada tabel 4. Simpan hasilnya pada register A. E.

Uji program saudara menggunakan data-data pada tabel 4. Buatlah program untuk melakukan operasi OR 2 bilangan 24 bit yang berada pada lokasi memori dengan alamat D002. . 2 (A or E) and H) Xor L ( 00 OR 01) 02 ) 03 00 01 02 03 03 ( A= 00) Xor 03 A =03 3 ((A or E) And H) Xor L (1 OR10) 20) 30 00 10 20 30 30 A=10 And H A=00 Xor 30 A=30 4 ((A or E) and H) xor L ((40 or 50) and 60) xor 70 40 50 60 70 30 (A=50 and 20) xor 70 A=40 xor 70 A=30 5 ((A or E) and H) xor L ((A0 or A1) and A2) xor A3 A0 A1 A2 A3 03 (A=A1 and A2) xor A3 (A=A0 ) xor A3 A=03 6 ((A or E) and H) xor L ((A4 or A5) and A6) xor A7 A4 A5 A6 A7 03 (A=A5 and A6) xor A7 (A=A4) xor A7 (A=03) 7 ((A or E) and H) xor L ((FF or FF) and FF) xor A7 FF FF FF FF FF A=FF and FF ( xor FF) (A=FF) xor FF A=00 2. Simpan hasilnya ini pada alamat D009. D000 dan D005. D003.7 dan tuliskan hasil perhitungan pada tabel tersebut. D001. D004. D007. D008. D006.

[D006] = A [D006]=77 . A=22 MOV B A . A=22 STA D008h . A=22 MOV B A . A=22 MOV B A . A=22 ORA B . A=22 B=22 LDA D003h . A=22 STA D007h . A=22 B=22 LDA D004h . A=22 ORA B . A=55 ORA B . A=22 STA D006h . LDA D000h . [D007] = A [D007]=22 LDA D002h . [D008] = A [D008]=22 b. [D002][D001][D000] [D005][D004][D003] OR [D009][D008][D007][D006] MSB LSB a. A=22 MOV B A . A=22 B=22 LDA D003h . LDA D000h . [D006] = A [D006]=22 LDA D001h . A=22 ORA B . A=22 B=22 LDA D005h . A=22 STA D006h .

A=BD STA D007h . A=45 B=45 LDA D005h . A= 67 STA D006h . A=A0 ORA B . A=77 STA D008h . A=E5 STA D008h . [D007] = A [D007]=BD LDA D002h . [D008] = A [D008]=77 c. A=45 MOV B A . A=77 ORA B . A=23 B=23 LDA D003h . A=89 ORA B . A=34 MOV B A . [D007] = A [D007]=77 LDA D002h . LDA D000h . A=33 B=33 LDA D004h . A=77 STA D007h . A=44 B=44 LDA D005h . A=66 ORA B . A=67 ORA B . LDA D001h . A=44 MOV B A . [D008] = A [D008]=E5 . [D006] = A [D006]=67 LDA D001h . A=23 MOV B A . A=34 B=34 LDA D004h . A=33 MOV B A .

A=FF B=FF LDA D003h . A=FF STA D007h . A=FF STA D008h . A=FF B=FF LDA D005h . A=FF ORA B . A=FF MOV B A . A=FF B=FF LDA D004h . [D008] = A [D008]=FF Tabel 4. [D007] = A [D007]=FF LDA D002h . LDA D000h . d. A=FF MOV B A . A=FF ORA B . A=FF STA D006h .6 Operasi OR pada blok memori Input Output Mnemonik [D000] [D001] [D002] [D003] [D004] [D005] [D006 [D007 [D008 [D009 ] ] ] ] 22 22 22 22 22 22 22 22 22 0 22 33 44 55 66 77 77 77 77 0 23 34 45 67 89 A0 67 BD E5 0 FF FF FF FF FF FF FF FF FF 0 PENUTUP . [D006] = A [D006]=FF LDA D001h . A=FF ORA B . A=FF MOV B A .

jika hasilnya bernilai ganjil maka 0. Kesimpulan Dari hasil praktikum dapat kita simpulkan bahwa:  Instruksi ANA dan ANI yaitu sama-sama meng AND-kan reg Adengan register 8bit. A=F5 C =80 Maka 1111 0101 1000 0000 Xor 0111 0101 Pada operasi Xor.mengapa?karena hasilnya itu menunjukkan ganjil.  Instruksi ORA dan ORI yaitu juga sama-sama meng OR kan reg A dengan register 8bit. .P=0 dan Cy=0. Analisa Dari hasil praktikum dapat di analisikan bahwa bahwa hasil dari operasi logika memengaruhi nilai pada flag.akan tetapi jika nilainya genap maka nilainya 1. Dan pada instruksi RAL yaitu menggeser 1bit ke kiri.jika ia menghasilkan 0 maka zero bernilai 1.jika nilainya negatif maka 1.Z=0.nilai pada S=0.maka A xor C.maka A and B. sedangkan ORI di OR kan reg A dengan data.AC=0.seperti pada instruksi ANA B. I. Dan pada instruksi XRA C.Dan pada zero mengapa 0?karena ia menghasilkan #0.mengapa pada sign bernilai 0? karena ia menghasilkan nilai positiv.akan tetapi ANA reg A di And kan dengan register yang disebutkan sedangkan ANI di And kan dengan data.RAL=FF.akan tetapi ORA di OR kan reg A dengan register. A=3B B=C1 0011 1011 1100 0001 And 0000 0001 Maka nilai flag pada parity yaitu 1. II.

akan tetapi CMP membandingkan reg A dengan register sedangkan CPI reg A dibandingkan dengan data.RAL. Instruksi XRA dan XRI yaitu meng XOR kan reg A dengan reg 8bit. .RRC dan RLC sama-sama menggeser isi register A.akan tetapi XRA reg A di XOR kan dengan register.  Instruksi RAR.  Sedangkan CMP dan CPI sama-sama membandingkan isi register A.akan tetapi Instruksi RAR dan RRC sama-sama menggeser isi register A ke kanan 1bit.sedangkan XRI di XOR kan dengan data.akan tetapi Instruksi RAL dan RLC meggeser isi register A ke kiri 1bit.