微机原理及接口技术课后习题及参考答案 下载本文

内容发布更新时间 : 2024/11/8 2:50:28星期一 下面是文章的全部内容请认真阅读。

.MODEL SMALL .CODE

START: MOV CX,16

MOV BL,0;BL中放0的个数 AGN: SHL AX,1;数0的个数 JC NEXT INC BL

NEXT: LOOP AGN MOV AL,BL DAA

MOV DL,AL;显示高位 AND DL,0F0H MOV CL,4 SHR DL,CL ADD DL,30H MOV AH,2 INT 21H

MOV DL,AL;显示低位 AND DL,0FH ADD DL,30H MOV AH,2 INT 21H

MOV DL,0DH;显示回车 MOV AH,2 INT 21H

MOV DL,0AH;显示换行 MOV AH,2 INT 21H MOV AX,4C00H INT 21H END START

4.17.答:1、用寄存器传参数。2、用共享变量传参数。3、用堆栈传参数。 4.18.答:设这个32位数放在DX.AX中,求补后的结果也放在DX.AX中。 BUMA PROC PUSH BX PUSH CX

XOR BX,BX XOR CX,CX SUB BX,AX MOV AX,BX SBB CX,DX MOV DX,CX POP CX POP BX RET

BUMA ENDP

4.19答:设数据个数在CX中,数据缓冲区的首地址为BUF。出口参数:校验和放在SUM字节单元。 CHKSUM PROC PUSH AX PUSH BX DEC CX LEA BX,BUF MOV AL,[BX] AGN: ADD AL,[BX] INC BX LOOP AGN MOV SUM,AL POP BX POP AX RET

CHKSUM ENDP

4.20答:设这个十六进制的字放在数据段的TEMP字单元中。 BTOH PROC PUSH AX PUSH BX PUSH CX PUSH DX MOV CL,4

MOV BX,TEMP

MOV DL,BH;最高位 SHR DL,CL

CMP DL,0AH JC N1 ADD DL,7

N1: ADD DL,30H MOV AH,2 INT 21H

MOV DL,BH;次高位 AND DL,0FH CMP DL,0AH JC N2 ADD DL,7

N2: ADD DL,30H MOV AH,2 INT 21H

MOV DL,BL;次低位 SHR DL,CL CMP DL,0AH JC N3 ADD DL,7

N3: ADD DL,30H MOV AH,2 INT 21H

MOV DL,BL;最低位 AND DL,0FH CMP DL,0AH JC N4 ADD DL,7

N4: ADD DL,30H MOV AH,2 INT 21H POP DX POP CX POP BX POP AX RET

BTOH ENDP

4.21答:

.MODEL SMALL

.DATA

BUF DW 9273H,0F3H,6A20H .CODE

START: MOV AX,@DATA MOV DS,AX LEA BX,BUF MOV AX,[BX] CMP AX,[BX+2] JB N1

XCHG AX,[BX+2] MOV [BX], AX N1: MOV AX,[BX+2] CMP AX,[BX+4] JB N2

XCHG AX,[BX+4] MOV [BX+2],AX N2: MOV AX,[BX] CMP AX,[BX+2] JB STOP

XCHG AX,[BX+2] MOV [BX], AX STOP: ;INT 3 MOV AX,4C00H INT 21H END START

4.22答: DISPLAY MACRO MOV AH,2 INT 21H ENDM

.MODEL SMALL

.DATA DAT DB 9CH .CODE