汇编语言程序设计答案+廖建明-chap6

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第六章习题答案

6.1 C

6.2 D

6.3 D

6.4 C

6.5 B

6.6 错。在L0: MOV AL,0语句后面加上RET语句

6.7

段内调用:保存IP内容入栈;更新IP内容

段间调用:保存CS,IP内容入栈;更新CS,IP内容

6.8

段内返回:从栈中弹出一个字的内容送入IP寄存器;SP=(SP)+n(如果带有操作数n) 段间返回:从栈中弹出两个字的内容分别送入IP,CS;SP=(SP)+n(如果带有操作数n)

6.9

从栈中弹出两个字的内容分别送入IP,CS;SP=(SP)+4

6.10

在需要和主程序共享寄存器的时候需要保护寄存器

6.11

寄存器传递参数;堆栈传递参数;地址表传递参数

6.12

相同点:都进行一次程序跳转

不同点:CALL会保存原地址IP入栈,而JMP不会

6.13

错误:子程序是FAR类型的,CALL时用的是NEAR

6.14

BX;(BX);SHIFT

6.15

图略

6.16

DATA SEGMENT

N DB 5

DATA ENDS

STACK SEGMENT

DW 20H DUP(0)

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA,SS:STACK

BEGIN:

MOV AX,DATA

MOV DS,AX

MOV AL,N

CALL FACT;调用阶乘子程序计算5!

MOV RESULT,DX

DEC N

MOV AL,N

CALL FACT;调用阶乘子程序计算4!

ADD RESULT,DX

DEC N

MOV AL,N

CALL FACT;调用阶乘子程序计算3!

ADD RESULT,DX

MOV AH,4CH

INT 21H

FACT PROC NEAR;阶乘子程序

MOV DX,1

CMP AL,0

JZ DONE

PUSH AX

DEC AL

CALL FACT

POP AX

MUL DL

MOV DX,AX

DONE:

RET

FACT ENDP

CODE ENDS

END BEGIN

6.17

6.18

(1)寄存器传值

MOV AX,DATA

MOV DS,AX

MOV SI,OFFSET NUM

MOV CX,COUNT

MOV DX,0

CALL F

MOV AH,4CH

INT 21H

F PROC

LOP:

MOV DI,OFFSET NUM20

ADD DI,DX

INC DX

XOR BL,BL

MOV AX,[SI]

LOP20:

CMP AX,20

JC SUB5

SUB AX,20

INT BL

JMP LOP20

SUB5:

MOV [DI],BL

XOR BL,BL

LOP5:

CMP AX,5

JC SUB2

SUB AX,5

INT BL

JMP LOP5

SUB2:

ADD DI,COUNT; DI=DI+2*COUNT

MOV [DI],BL

XOR BL,BL

LOP2:

CMP AX,2

JC SUB1

SUB AX,2

INT BL

JMP LOP2

SUB1:

ADD DI,COUNT SHL 1;DI=DI+2*COUNT MOV [DI],BL

XOR BL,BL

LOP1:

CMP AX,1

JC DONE

SUB AX,1

INT BL

JMP LOP1

DONE:

ADD DI,COUNT

ADD DI,COUNT

ADD DI,COUNT;DI=DI+3*COUNT

MOV [DI],BL

ADD SI,2

LOOP LOP

RET

F ENDP

EODE ENDS

(2)堆栈传值

BEGIN:

MOV AX,DATA

MOV DS,AX

MOV SI,OFFSET NUM

MOV DI OFFSET NUM20

MOV CX,COUNT

PUSH SI

PUSH DI

PUSH CX

CALL F

MOV AH,4CH

INT 21H

F PROC

PUSH AX

PUSH BX

PUSH CX

PUSH SI

PUSH DI

MOV BP,SP

MOV CX,12[BP]

相关文档
最新文档