Custom Search

Mode Pengalamatan (Bab II)

2.2. Immediate Addressing


Immediate addressing atau sebenarnya lebih dikenal sebagai immediate constant addressing, mengacu pada transfer data konstanta pada register atau RAM

Percobaan 2.2.1:

Org 0h

Start: MOV A, #0h; isi accumulator dengan data 0

MOV A,#11h;isi accumulator dengan data 11h

MOV B,#27h;isi register B dengan data 27h

end

Percobaan 2.2.2:

Org 0h

Start: MOV 70,#0h; isi RAM alamat 70h dengan data 0

MOV 71,#1h; isi RAM alamat 71h dengan data 1

MOV 72,#2h; isi RAM alamat 72h dengan data 2

end

Percobaan 2.2.3:

Org 0h

Start: MOV DPTR,#1234h;isi register 16 bit DPTR dg 1234h

end

Percobaan 2.2.4:

Org 0h

Start: MOV PSW,#0; Select register bank 0

MOV R0,#0; put 0 into register 0

MOV R1,#1; put 1 into register 1

MOV R2,#2; put 2 into register 2

MOV R3,#3; put 3 into register 3

MOV R4,#4; put 4 into register 4

MOV R5,#5; put 5 into register 5

MOV R6,#6; put 6 into register 6

MOV R7,#7; put 7 into register 7

end

Percobaan 2.2.5:

Org 0h

Start: MOV PSW,#8; Select register bank 1

MOV R0,#0; put 0 into register 0

MOV R1,#1; put 1 into register 1

MOV R2,#2; put 2 into register 2

MOV R3,#3; put 3 into register 3

MOV R4,#4; put 4 into register 4

MOV R5,#5; put 5 into register 5

MOV R6,#6; put 6 into register 6

MOV R7,#7; put 7 into register 7

end



2.3. Direct Addressing


Pada mode direct addressing operand ditentukan oleh address 8 bit pada instruksi. Hanya data RAM internal dan SFR dapat dialamati secara langsung.

Percobaan 2.3.1:

Org 0h

Start: Mov 70h,#1

Mov A, 70h; copy isi register internal 70h ke accumulator

Mov A,#0; clear accumulator

Mov 90h,A; copy isi accumulator ke RAM 90h atau Port 1

end

Percobaan 2.3.2:

Inbyte equ 70h

Port1 equ 90h

Org 0h

Start: Mov A,Inbyte; copy isi dari Inbyte ke Accumulator

Mov A,#0; Clear accumulator

Mov Port1,A; coopy isi accumulator ke Port 1

end


2.4. Register Addressing


Register addressing, merupakan proses transfer data ke register R0 s/d R7

Percobaan 2.4.1:

Org 0h

Start: Mov PSW,#10h; select register bank 2

Mov R0, A; copy isi accumulator ke register R0

Mov R7, B; copy isi register B ke register R7

Mov PSW,#18h; select register bank 3

Mov A,R0; copy isi register R0 ke accumulator

Mov R7,A; copy isi accumulator ke register R7

end


2.5. Register Indirect Addressing


Mode pengalamatan ini merupakan salah satu pengalamatan yang paling ampuh. Alamat dari source atau tujuan tidak disebutkan secara eksplisit. Tetapi isi dari register yang digunakan sebagai target address.

Percobaan 2.5.1:

Org 0h

Start: Mov PSW, #0; pilih register bank 0

Mov R0, #78h; isi register R0 dengan konstanta 78h

Mov @R0, #1; isi RAM alamat 78h dengan data 1

end


Percobaan 2.5.2:

Org 0h

Start: Mov PSW, #0; pilih register bank 1

Mov R0, 90h; copy data dari RAM 90h atau Port 1 ke register R0

Mov @R0,#1; isi RAM alamat yang ditunjuk oleh R0 dengan 1

End




Mov A, #1; isi accumulator dengan data 1

Mov DPTR, #8000h; isi data pointer dengan konstanta 8000h

Movx @DPTR,A; copy isi accumulator ke data eksternal pada

alamat yang ditentukan oleh DPTR


Percobaan 2.5.3:

Org 0h

Mov DPTR,#Karakter

Start: Mov A, #0

Inc DPTR

Movc A, @A+DPTR

Mov R0,A

Sjmp Start

Karakter:

DB 0,1,2,3,4,5,6,7,8,9



Contoh Soal:



Rencanakan program assembly untuk pengambilan data dari port P1 sebanyak 10 buah data dan masing masing disimpan di alamat RAM mulai 37h s/d 40h seperti yang ditunjukkan pada gambar, setelah dilakukan proses penyimpanan maka pindahkan masing-masing data ke alamat mulai 50h s/d 59h.


Penyelesaian:

Org 0h

Start: Mov R0, 37h

Mov R1, 10

Ambil: Mov A,P1

Mov @R0,A

Inc R0

Acall Delay

DJNZ R1, Ambil

Mov R0,37h

Mov R1,59h

Mov R2,10

Simpan:Mov A,@R0

Mov @R1,A

Inc R0

Inc R1

DJNZ R1, Simpan

Delay: Mov R3,#0FFh

Delay1:Mov R4, #0FFh

Delay2:DJNZ R4,Delay2

DJNZ R3,Delay1

Ret

End


0 comments:

Post a Comment

Informasi Pilihan Identitas:
Google/Blogger : Khusus yang punya Account Blogger.
Lainnya : Jika tidak punya account blogger namun punya alamat Blog atau Website.
Anonim : Jika tidak ingin mempublikasikan profile anda (tidak disarankan).

Artikel yang serupa