當前位置:編程學習大全網 - 編程軟體 - 匯編語言編程題:在內存地址為buff開始的單元定義了100個字節,編譯程序要求完成填充這100個字節從31開始

匯編語言編程題:在內存地址為buff開始的單元定義了100個字節,編譯程序要求完成填充這100個字節從31開始

CODE?SEGMENT

ASSUMECS:CODE

BUFF?DB100?DUP(?)

N?EQU$-BUFF

Y?DB0

Z?DW0

START:?PUSH?CS

POPDS

PUSH?CS

POPES

LEADI,BUFF

MOVAL,31

MOVCX,N

CLD

@1:

STOSB

ADDAL,2

LOOP?@1

LEASI,BUFF

MOVCX,N

CLD

@2:

LODSB

CBW

CMPAX,0

JBE@3

INCY

ADDZ,AX

@3:

LOOP?@2

MOVAL,Y

CBW

CALL?DSPAX2

MOVAX,Z

CALL?DSPAX2

MOVAL,Y

CBW

CALL?DSPAX10

MOVAX,Z

CALL?DSPAX10

MOVAH,4CH

INT21H

;================================

DSPAX2?PROC?NEAR

PUSH?AX

PUSH?BX

PUSH?CX

PUSH?DX

PUSHF

XORCX,CX

MOVBX,2

@DSPAX2_1:

XORDX,DX

DIVBX

INCCX

ORDX,30H

PUSH?DX

CMPAX,0

JNE@DSPAX2_1

MOVAH,2

@DISPAX2_2:

POPDX

CMPDL,3AH

JB@DISPAX2_3

ADDDL,7

@DISPAX2_3:

INT21H

LOOP?@DISPAX2_2

MOVDL,32

INT21H

POPF

POPDX

POPCX

POPBX

POPAX

RET

DSPAX2?ENDP

;================================

DSPAX10?PROC?NEAR

PUSH?AX

PUSH?BX

PUSH?CX

PUSH?DX

PUSHF

XORCX,CX

MOVBX,10

@DSPAX10_1:

XORDX,DX

DIVBX

INCCX

ORDX,30H

PUSH?DX

CMPAX,0

JNE@DSPAX10_1

MOVAH,2

@DISPAX10_2:

POPDX

CMPDL,3AH

JB@DISPAX10_3

ADDDL,7

@DISPAX10_3:

INT21H

LOOP?@DISPAX10_2

MOVDL,32

INT21H

POPF

POPDX

POPCX

POPBX

POPAX

RET

DSPAX10?ENDP

;================================

CODE?ENDS

ENDSTART

  • 上一篇:壹般專升本計算機考試題型有哪些?
  • 下一篇:自動駕駛可以加裝嗎
  • copyright 2024編程學習大全網