.


:




:

































 

 

 

 





7.1. NORTON exdiv.asm -:

 

.286

TITLE EXDIV (COM) DIV IDIV

CODESG SEGMENT PARA 'Code'

ASSUME CS:CODESG,DS:CODESG,SS:CODESG,ES:CODESG

ORG 100H; PSP

BEGIN: JMP SHORT MAIN;

;-------------------------------------------------------

BYTE1 DB 80H;

BYTE2 DB 16H

WORD1 DW 2000H

WORD2 DW 0010H

WORD3 DW 1000H

;--------------------------------------------------------

MAIN PROC NEAR;

CALL D10DIV; / DIV

CALL E10IDIV; / IDIV

CALL F10SHR; / SHR

RET

MAIN ENDP

; DIV

; ----------------------

D10DIV PROC

MOV AX,WORD1; /

DIV BYTE1;: AH:AL

MOV AL,BYTE1; /

SUB AH,AH;.

DIV BYTE2;: AH:AL

MOV DX,WORD2; /

MOV AX,WORD3; DX:AX

DIV WORD1;: DX:AX

MOV AX,WORD1; /

SUB DX,DX;. DX

DIV WORD3;: DX:AX

RET

D10DIV ENDP

; IDIV

; ----------------------

E10IDIV PROC

MOV AX,WORD1; /

IDIV BYTE1;: AH:AL

MOV AL,BYTE1; /

CBW;.

IDIV BYTE2;: AH:AL

MOV DX,WORD2; /

MOV AX,WORD3; DX:AX

IDIV WORD1;: DX:AX

MOV AX,WORD1; /

CWD;. DX

IDIV WORD3;: DX:AX

RET

E10IDIV ENDP

;

; -------------------------

F10SHR PROC

MOV AX,256

SHR AX,1; 2

MOV CL,3

SHR AX,CL; 8

RET

F10SHR ENDP

CODESG ENDS

END BEGIN

 

D10DIV : , , . DIV 2000 (8092) 80 (128). 00 , 40 (64) - AL.

DIV BYTE1 . , . - 12 , 05 - AL.

DIV 1000 DX 0080 .

DIV WORD1 DX:AX. 0000 DX, 0002 .

E10IDIV , D10DIV, DIV IDIV. IDIV 2000 ( ) 80 ( ). 00 , - 0 (-64) - AL.

:

 

IDIV

 

2 (-18) FB (-5)

3 1000 (4096) 0080 (128)

4 0000 0002

 

F10SHR 2 (2,4 ..).

7.2. . . DEBUG .

7.3. AX DX. .

 





:


: 2015-10-01; !; : 347 |


:

:

.
==> ...

784 - | 746 -


© 2015-2024 lektsii.org - -

: 0.007 .