Logika (Bab II)

2.7. Instruksi Logika

Mnemonic

Description

Addressing Mode

Direct

Register

Indirect

Register

Immediate

Constant

Register

Specific

ANL A, byte AND X X X X
ANL byte, A AND X
ANL byte, constant AND X
ORL A, byte OR X X X X
ORL byte, A OR X
ORL byte, constant OR X
XRL A, byte XOR X X X X

XRL byte, A XOR X
XRL byte, constant XOR X
CLR A Clear accumulator Accumulator Only X
CPL A Complement accumulator Accumulator Only X
RL A Rotate accumulaotor Left Accumulator Only X
RLC A Rotate Accumulator dan Carry Left Accumulator Only X
RR A Rotate Right Accumulator Accumulator Only X
RRC A Rotate Right Accumulator dan Carry Right Accumulator Only X
SWAP A Tukar low dan high byte Accumulator Only X

2.7.1. Instruksi AND, OR, NOT, Clear dan XOR

Percobaan 2.7.1.1:

Org 0h

Start: Mov A, #18h

Orl PSW,A

end

Percobaan 2.7.1.2:

Org 0h

Start: Mov A, #0E7h

And PSW,A

end

Percobaan 2.7.1.3:

Org 0h

Start: Mov A, #0E8h

Anl PSW, A

Mov A, #8h

Orl PSW,A

end

Percobaan 2.7.1.4:

Org 0h

Start: Mov P1,#0AAh

Mov A, #0Fh

Anl P1, A

Mov P1, #0AAh

Mov A, #0Fh

Orl P1, A

End


Percobaan 2.7.1.5:

Org 0h

Start: Mov A, #0AAh

Cpl A

Clr A

End

Berikan penjelasan pada kelima percobaan tersebut diatas !

2.7.2. Instruksi Rotate

Instruksi rotate hanya berlaku pada register tertentu, beroperasi hanya pada accumulator. Bit dari acumulator digeser satu digit, sama seperti operasi shift register. Instruksi rotate biasanya sangat mujarab digunakan untuk instruksi perkalian atau pembagian. Menggeser accumulator ke kiri satu digit, sama halnya dengan mengalikan accumulator dengan 2. Demikian juga menggeser accumulator dua digit ke kiri berarti mengalikan accumulator dengan 4. Menggeser kekanan ekuivalent dengan pembagian terhadap 2.



Gambar 2.3. Mekanisme Rotate Left ( RL )


Gambar 2.4. Mekanisme Rotate Left and Carry ( RLC )



Gambar 2.5. Mekanisme Rotate Right ( RR )


Gambar 2.6. Mekanisme Rotate Right and Carry ( RRC )

Percobaan 2.7.2.1:

Org 0h

Start: Mov A, #10000000b

Putar: RR A

Sjmp Putar

End

Percobaan 2.7.2.2:

Org 0h

Start: Mov A, #00000001b

Putar: RL A

Sjmp Putar

End

Percobaan 2.7.2.3:

Org 0h

Start: Mov A, #10000000b

Putar: Setb C

RRC A

Sjmp Putar

End

Percobaan 2.7.2.4:

Org 0h

Start: Mov A, #00000001b

Putar: Setb C

RLC A

Sjmp Putar

End

Berikan penjelasan pada kelima percobaan tersebut diatas !



Post a Comment

0 Comments