1. 58080.
, , 1 2 . - . : ', , , . - , ' - . , ' . 1 5 . - , 䳿 . 1 . 3 5 . ', - . ³ 1. - '. ; - 5 .
2. - .
ʳ |
3. .
. , . :
ADD+, a SAT-
4. , .
: Tz, Ts, Tp, Tc.
Tz 0, Tz=1, 0.
Ts , .
Tp Tp=1, 1.
Tc .
() , , 䳿 ; , .
5. 8086.
8086 16- . , .
|
|
, 䳺 : , , , ' /B.
6. 8086.
i8086 ', , ', , '. .
. 1. '
. ̳ i8086 16- , 16- , 16- . ² ' 20- . : 16- = 64 ; 20- - = 1 .
7. 8086.
:
MOV dest, src
Dest
Src -
:
MOV reg, reg
:
1) CL BL.
MOV BL, CL BL CL
ϳ MOV BL=11000001 CL=11000001.
2) DS:[200DH] CX.
MOV CX, [200DH] CX DS[200DH]
16- 16- . . , , DS[200DH].
3) DS 4000H. 4000h . ,
MOV BX, 4000h BX 4000h
MOV DS, BX DS BX
8. -.
, , , / . , , . , , /.
. , , . / , , .. / (.15.1).
.15.1 /
9. .
, ' . ³ , , , ' .
|
|
, , . ³ , , , , , , .
, , , .
: .
, , , , . ', . ' , , .
, . . .
, . , ' ,
. ³ .
10. .
, . - , .1, . JC, JPO, JPE, JP, JM. , . . ֳ .
HL <32> |
BC <32> |
D <B2> |
A (M) |
[(BC)] (A) |
HL (HL) -1 |
BC (BC)+1 |
D (D)-1 |
ʳ |
Tz =0? |
11. .
. ϳ . , . call ret:
all [] _ - (). _ , , , all.
ret [] - . cs ip/eip, , all. [] - ' , , .
12. . .
ϳ . , , , , , , ,
13. 8086, .
|
|
8086 , 8080, :
16- (), AX, BX, CX, DX, BP ( ), SP ( ), SI ( ), DI ( ). xL xH , , AL AH;
- (ALU), , , ;
() F;
.
:
CS, DS, ES, SS, ;
, , 8080, ;
;
, 20- 16- ;
, FIFO ( 16);
, .
14. 20- 16- .
20- 16- 16- . i8086 20- 16- , . , , 64 . , .
0000, , FFFFH - . , 64 , .
15. 8086.
16. 58086 8080.
580 58086, 8- - (.2.8) .
' , , , ' , , ' . 1 ( ).
17. .
18. .
- ( ). . ֳ .
, . .
19. CALL.
ALL, PC, PC , 䳿:
1) [(SP)-1] [(SP)-2] (PC)
2) SP (SP)-2
3) PC
20. , .
21. 8086, .
|
|
:
CS, DS,ES, SS,
IP, 8086,
, 20- 16-
, , FIFO
,
22. 20- 16- .
Գ 20- 16- , EA (Executive address).
.8.2.
Գ Seg, , 24=16, EA. . Գ Seg:EA, Seg EA 16- .
.8.2 8086
23. 8086.
, : ADD,SUB, CNP, AND, TEST, OR, XOR
:
REG, mem
Mem, REG
REG, REG
Mem, immed
REG, mmed
24. ϲ 58055.
1) 8- , ²
2) (- RWCU), .
3) 8- -( A,B, C). 4- .
4) (CUA), , (UB), , .
RWCU , RCW/
25. , .
, 1 1 1 2 2 , ,
.
26. .
, , -, , .
X..X d, s, X..X , d ( ; ), s ( , ; ).
:
CLI , ;
INC A; MOV AX, DX ;
ADD AX, DX .
27. RET.
RET (PC) . 䳿:
1) PC [(SP)(SP)+1]
2) SP (SP)+2
28. . .
, . ᒺ , .
(CALL) (CNZ, CZ, CNC, CC, CPO, CPE, CP, CM
, , , 䳿:
[(SP) -1] [ (SP) - 2] ← (PC);
SP ← (SP) 2;
PC ← <3 2>.
11001101 CALL 092D 00101101 00001001 |
|
|
ϳ , . (RET) , (CALL), 䳿:
(PC) ← [(SP)] [(SP) + 1];
SP ← (SP) + 2;
29. () 8086.
30. 8086.
, . 8086 (), , . 8086 .9.1.
1. .9.1 8086
31. 8086.
IP, CS. , CS , , IP - , . ϳ , CS IP, ' . , .
: ; ; ; .
. . JMP FAR LABEL
(JuMP FAR - ) , LABEL. ' 1 . IP, CS LABEL.
32. ϲ 58055.
33. .
10 . m1 .
10 :
1)
2)
3)
4)
5)
6)
7)
8) ϳ
9) ϳ
10) ϳ .
34. .
) ,
) , , .
35. CALL.
(CALL) (CNZ, CZ, CNC, CC, CPO, CPE, CP, CM
, ,
36. .
(CALL) (CNZ, CZ, CNC, CC, CPO, CPE, CP, CM
, , , 䳿:
[(SP) -1] [ (SP) - 2] ← (PC);
SP ← (SP) 2;
PC ← <3 2>.
(RET) , (CALL), 䳿:
(PC) ← [(SP)] [(SP) + 1];
SP ← (SP) + 2;
37. 8086, .
( - flags). 16 . 1 0.
Carry Flag (CF) - - 1, . , 255 + 1 ( 0...255). , 0.
Zero Flag (ZF) - - 1, . , 0.
Sgn Flag (SF) - - 1, - . , 0. .
Overflow Flag (OF) - - 1, . , 100 + 50 ( -128...127).
Party Flag (PF) - - 1, 8- . , 0. - , 8 !
Auxlary Flag (AF) - - 1, 4- ( 3- ).
nterrupt enable Flag (F) - - 1, .
Drecton Flag (DF) - - . 0 - , 1 - .
38. 8086.
.
' :
1. ( , , -);
2. (, , );
3. ;
4. , ;
5. .
39. .
40. ϲ 58055. .
. 3.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
M1 | M2 | IOA | IOC | M | IOB | IOC |
. 3. .
:
- 1, 0 : 00 0, 01 1, 1 2;
- (1 , 0 );
- C C (1 , 0 );
- (0 0, 1 1);
- B (1 , 0 );
IOC C (1 , 0 ).
RESET ϲ 0. . 4 , 0 , , - .
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
. 4. .
41. .
, , , COAT
42. .
{<>}; <>{<>},{<>}{;}
, .
̳ | () | ||
M1: | MOV ADD | AX,05 AX,BX | AX 05 AX AX+BX |
̳ | () | ||
COUNT | DB | ʳ . |
43. . .
(CALL) (CNZ, CZ, CNC, CC, CPO, CPE, CP, CM
: Tz, Ts, Tp, Tc. () , , 䳿 ; , .
44. 58080.
45. 8086.
', . : , . , . , . . , . .
46. 8086.
1) BX BP 8- 16-
DS:EA
BX BP
8 16
2) SI DI, 8 16.
3) = BX BP, SI DI
DS:[BX+7Ah]
47. /.
, , , / . , , . , , /.
48. 58028 .
1. 58055 : =0, , =0, =1. ϲ ?
2. - : m+n, m , n L, H.
3. , JNZ 0918, =0800. PC, =1.
4. , 5808, 1
5. 3 .
6. 58055 : =0, , =0, =1. ϲ ?
7. - : m+n, m D, n H, A.
8. , JNZ 0918, =0800. PC, =0.
9. , 1328, 1 4 .
10. 58055 : =0, , =0, =1. ϲ ?
11. - : (m+n)/m, m D, n H, B.
12. , JNZ 0918, =090F. PC, =1.
13. , 1328, 1 2 .
14. 58055 : =0, , =0, =1. ϲ ?
15. - : (m-n)/m, m B, n L, D.
16. , JNZ 0918, =090F. PC, =0.
17. 5412, 1 4 .
18. 58055 : =0, , =0, =1. ϲ ?
19. - : m-n, m D, n B, L.
20. , JC 0800, =0918. PC, =0.
21. , 5378, 1 2 .
22. 58055 : =0, , =0, =1. ϲ ?
23. - : (m-n)/m, m L, n E, D.
24. , JZ 0800, =0918. PC, =1.
25. , 1328, 1 3 .
26. 58055 : =0, , =0, =1. ϲ ?
27. - : m+n, m B, n L, H.
28. , JZ 0918, =0800. PC, =1.
29. , 5378, 1 3 .
30. 58055 : =0, , =0, =1. ϲ ?
31. - : m+n, m D, n H, A.