- .
DAA . - . .
DAA .9.1.
, DAA :
IF ((A)&0Fh)>09h OR AC=1 THEN (A)(A)+06h
IF ((A)&F0h)>90h OR CY=1 THEN (A)(A)+60h
1.48
MVI A,13; A
MVI B,77; B
ADD B; : A=13+77=8A AC=0 CY=0
DAA;
90.
. 1.3. - DAA
- CY .
STC 1 CY .
CMC CY .
- , . , . , , .
- , (. .8.1). .
, , .
, . , , .
, () . .
. ( ) , SP, . SP : , . , ( SP) .
|
|
8080
,
,
,
HL.
, SP. . LXI SP,d16, . d16, . SPHL, HL:
(SP)(HL)
PUSH B, PUSH D, PUSH H, PUSH PSW. .
, PSW (Processor Status Word) A ( ) F. rp : stack(rp). :
1. SP : (SP)(SP)1
2. : M(SP)
3. SP : (SP)(SP)1
4. : M(SP)
2, .
POP B, POP D, POP H, POP PSW. , . :
1. : M(SP)
2. : SP (SP)(SP)+1
3. : M(SP)
4. : (SP)(SP)+1
2, .
XTHL . , HL:(HL)stack. SP . . . : , . , . 18 .
|
|
, TIX.
1.50
;********************
LXI SP,1FFFh;
.
LXI B,03E8h; 1 (3E8h=1000)
CALL TIX;
MOV B,A;
.
;
;********************
; : BC
TIX: PUSH B; (BC)
TI2: PUSH PSW; (A)&(F)
PUSH D; (DE)
; ********************
XRA A
TI1: MVI D,80
TI0: DCR D
JNZ TI0
DCX B; BC=BC1
CMP B
JNZ TI1
;*********************
POP D; (DE)
POP PSW; (A)&(F)
POP B; (BC)
RET;