Presentation is loading. Please wait.

Presentation is loading. Please wait.

Microprocessor Dr. Rabie A. Ramadan Al-Azhar University Lecture 8.

Similar presentations


Presentation on theme: "Microprocessor Dr. Rabie A. Ramadan Al-Azhar University Lecture 8."— Presentation transcript:

1 Microprocessor Dr. Rabie A. Ramadan Al-Azhar University Lecture 8

2 Z80 Assembly Programming 2

3 Arithmetic Operations Addition and Subtraction Increment/Decrement 1’s and 2’s Complement 3

4 Addition and Subtraction Performed in relation to the contents of the operands. ADD A, r  Add the contents of register r to the contents of the accumulator and stores the result back in the accumulator. Needs only one byte. ADD A, 8-bit  Add 8-bit data directly to the accumulator (2 bytes). ADD A, (HL)  Add memory contents to the accumulator (1 byte) 4

5 Addition and Subtraction SUB r  subtracts the contents of register r from the accumulator. SUB 8-bit  subtract 8-bit from the accumulator SUB (HL)  subtract memory contents from the accumulator 5

6 Increment/Decrement Instructions INC/DEC r  increment/ Decrement the contents of register r. INC/DEC (HL)  Increment/decrement the contents of memory INC/DEC rp  Increment/ decrement register pair (HL, DE, BC, SP) One byte each 6

7 1’s and 2’s Complement Instructions Performs the complement on the accumulator contents. CPL  1’s complement or inverts the contents of the accumulator (1 byte) NEG  2’s complement. Subtracts the accumulator from 00 (2 bytes) 7

8 Branch Operations Jump instructions Call and return instructions Restart instructions 8

9 Jump Instructions Absolute Jump Operands specifies the 16-bit address to which the program sequence should be transferred Three bytes instruction Relative Jump Contains 8-bit displacement 2-byte instruction 9

10 Absolute Jump Unconditional Conditional Implemented based on the following flags S  sign Z  Zero CY  Carry P/V  Parity/overflow Two instructions are associated with each flag. One when the flag is set and one when the flag is reset 10

11 Absolute Jump JP 16-bit  Jump unconditional to memory location specified by the 16-bit operand JP C, 16-bit  Jump on carry to 16-bit address (CY=1) JP NC, 16-bit  Jump on no carry to 16-bit address (CY=0) JP Z, 16-bit  Jump on zero to 16-bit address (z = 1) 11

12 Absolute Jump JP NZ, 16-bit  jump on zero to 16-bit address (Z = 0) JP M, 16-bit  jump on minus to 16-bit address (S = 1) JP P, 16-bit  Jump on positive to 16-bit address (S=0) JP PE, 16-bit  Jump on parity even to 16-bit address (P/V = 1) JP PO, 16-bit  Jump on parity odd to 16-bit address (P/V = 0) 12

13 Relative Jump Instructions Unconditional and Conditional types The instruction followed by 8-bit displacement/offset value Offset could be positive (forward) (D6-D0 and MSB is always 0) Offset could be negative (backward) (2’s complement) 13

14 Relative Jump Instructions JR d,  Jump relative unconditionally JR Z, d  jump relative if Z = 1 JR NZ  jump relative if Z = 0 JR C, d  jump relative if CY = 1 JR NC, d  Jump relative if CY = 0 There are no relative Jump instructions based on Sign and Parity flags 14

15 Instructions related to Index Registers LD IX, 16-bit  load 16-bit data into IX register LD (IX+d), 8-bit  load 8-bit into memory location (IX+d) LD r, (IX + d)  copy from memory (IX+d) location into r LD (IX+d), r  copy from r into memory (IX+d) ADD A, (IX+d)  add contents of memory (IX+d) into A SUB (IX+d)  subtract contents of memory IX+d from A 15

16 Instructions related to Index Registers INC IX  Increment 16-bit contents of IX INC (IX+d)  Increment contents of memory IX+d DEC IX  decrement 16-bit contents of IX DEC (IX+d)  decrement contents of memory IX + d 16

17 Example Write instructions to read incoming data from input port INPORT, count the number of readings, and add the readings. When the sum exceeds FF, stop reading the port, store the number of readings added in memory location OUTBUF, and display 01 at the output port OUTLED to indicate the overload? See page 200 for the answer 17


Download ppt "Microprocessor Dr. Rabie A. Ramadan Al-Azhar University Lecture 8."

Similar presentations


Ads by Google