.


:




:

































 

 

 

 


. 8086




7

8086

: .

 

.

, . , , , , . : , - , '; . , , . , .

, "" ', , , . "".

32- Intel ; 86 . , 86.

:

1. ;

2. ;

3. ;

4. ( );

5. ( );

6. -;

7. .

 

1.1

- ' .

. ( ) . - :

. ( ) . - :

 

inc CX ; 1 CX
push DS ;
xchg BX,BP ; BX BP
mov ES,AX ; AX ES

 

1.2

. ( ) ; (, , ASCII), .

 

mov , 40h ; 40h
mov AL,'*' ; ASCII "*' AL
int 21h ; 21h
limit equ 528 ; 528 limit
mov CX,limit ; , limit,

 

mov, , ; , - .

(), offset ():;

string db Privet";

;

mov DX,offset string; DX

1.3 .

'; ' ( ) ( ) :

;

meml dw 0; 0

mem2 db 230; 230

;

inc meml; meml 1

mov DX, meml; ' menu DX

mov AL,mem2; ' mem2 L

 

, , ​​ ' , ; ​​ offset - .

' , , . , , meml, ' . , , . - : . meml mem2 , . . : DS, ES, CS SS. , , ?

, . : , , , . .

, ', , , . ES 26h, SS - 361i, CS - 2Eh. , DS ( ).

, , DS, inc meml inc DS: mem. ' :

inc ES: mem1

inc CS: mem2

 

' :

 

mov AL,DS: [17h] AL 17h , DS

 

1.4 ( ).

' ( ). ³ ' , . 86 , , SI DI. , SI DI - .

, SI DI, , DS, DS: :

mov es: [bx],'1' ――――→ mov [bx],'1'

 

, '. 1 .

, SI DI , - :

. , ; , SS.

, , , (, ).

:

[BX] ( DS: [BX])
[BP] ( SS: [BP])
[SI] ( DS: [SI])
[DI] ( DS: [DI])

 

, , , - . ' ( ) ( , , '). , , , . , , . , , .

 

:

mov SI, offset string ; SI string
mov AX, [SI] ; string AX
inc [SI] ; string
mov BX, [SI] ; string BX
mov DI, SI ; ³ string DI

 

1.5 ( ).

' ( ). ³ , BX, BP, SI DI , . . , , BX, SI DI , DS, , , SS.

= {SP, BP, DI, SI, BX} +

, . , , 4 [] [ +4], 4 + [] [] +4. , , , , , , .

:

= {SP, BP, DI, SI, BX} +

 

[] - . ³ , , .

array db 0, 10, 20, 30, 40, 50, 60; :

:

mov BX,5

mov AL,array [5]; AL 5, 50.

:mov BX,offset array

mov AL,5 [BX]

mov AL, [BX] +5

mov AL, [BX+5]

 

1.6 -

' ( ). ³ , :

[BX] [SI] ( DS: [BX] [SI])
[BX] [DI] ( DS: [BX] [DI])
[BP] [SI] ( SS: [BP] [SI])
[BP] [DI] ( SS: [BP] [DI])

 

:

 

[BX+SI]
[ +BX+SI]
[BX+SI] +

 

, , . , ( ), - (SI DI). , , - , , .

 

1.7 - .

' ( ). ³ .

. , . - , ( '), . .

.

24

syms db ''

db ''

mov BX,12mov SI,6

mov DL,syms [BX] [SI]; DL 6 , ASCII

:

mov BX,offset syms

mov SI,6

mov DL,12 [BX] [SI]

 


2. :

1. EMU 8086 , 1:

2. COM.

3. , : , .

4. , .com .

5. 5 , .

6. 00FFh. ' , , .

7. , .

8. ϳ , , ' , .

9. .

 

3.

X Y?

MOV [si], cx

MOV si, cx?

MOV dx, offset message?

: [BX] [SI], [BX] [DI], [BP] [SI], [BP] [DI]?

5.

MOV AL, DS: 17h?

:

MOV AL, DS: [17h]?

6. , ( 1), , :

;

?

7. ' ?

8. , . ?

9. . ?

10. ?


˳ 1.

TITLE MOVE2 MOVE2 SEGMENT 'CODE' ASSUME CS: MOVE2, DS: DATA MYPROC PROC OUTPROC:

MOV AX,DATA MOV DS,AX MOV AH,BH MOV AH,X MOV CH,3 MOV AX,3 MOV AX,Y MOV [SI],CX MOV [BP],CX MOV [SI],258 MOV [BP+516],1027 MOV BYTE PTR X,255 MOV BYTE PTR [DI+515],4 MOV WORD PTR [DI+515],4 MOV [DI+BP+515],258 MOV AX, [SI+BX+258] MOV AH,4CH INT 21H MYPROC ENDP MOVE2 ENDS DATA SEGMENT X DB 1 Y DW 2 DATA ENDS END MYPROC

 





:


: 2017-01-28; !; : 453 |


:

:

, .
==> ...

1691 - | 1465 -


© 2015-2024 lektsii.org - -

: 0.039 .