汇编语言 廖建明编 课后习题第五章习题答案

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

5.1 顺序分支循环

5.2 (AX)=5400H (BL)=06H (DX)=2106H

5.3 D

5.4 C

5.5 B

5.6 D

5.7 C

5.8 0FFH 0

5.9 C

5.10 略

5.11 B

5.12 A

5.13 23H 01H 56H 04H 00H

5.14 将BUF里的小写字母转换成大写字母

5.15 略

5.16 (1)完成85274AH与938765H的加法功能

(2)不能。INC对CF无影响,而ADD有影响

(3)MOV SI,OFFSET DA TA1

(4)置CF为零。若CF初始为1,则在第一次执行ADC指令时会产生不正确的结果。5.17(编程题为参考答案,下同)

DA TA SEGMENT

DA TA1 DB ?

DA TA2 DB ?

DA TA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DA TA

BEGIN:MOV AX,DA TA

MOV DS,AX

MOV DX,DA TA1;高位送DX

MOV AX,DA TA2;低位送AX

SHL AX,1;

RCL DX,1;

MOV AH,4CH

INT 21H

CODE ENDS

END BEGIN

5.18

DA TA SEGMENT

DA TAS DB ‘PLEAST INPUT:’,0DH,0AH, ‘$’

DA TA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DA TA

BEGIN: MOV AX,DA TA

MOV DS,AX

MOV AH,9H

INT 21H ;输出“PLEASE INPUT:”

MOV AH,1

INT 21H ;用户输入

MOV DL,AL

SUB DL,20H

MOV AH,2

INT 21H ;显示输出

MOV AH,4CH

INT 21H

CODE ENDS

END BEGIN

5.19

DA TA SEGMENT

ARRAY DB 20 DUP(?);原数列

PLUS DB 20 DUP(0);存放正数

NEGA DB 20 DUP(0);存放负数

PLUS_N DB 0;指示正数个数

NEGA_N DB 0;指示负数个数

TIME DB 20

DA TA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DA TA

BEGIN: MOV AX,DA TA

MOV DS,AX

LEA SI,ARRAY

LEA BX,PLUS

LEA DI,NEGA

MOV CX,TIME

CLC;以上为初始化

LOOP1: MOV AL,[SI]

CMP AL,0

INC SI

JA DAYU

JB XIAO

LOOP LOOP1;等于零处理

JMP SHOW

DAYU: MOV [BX],AL;大于零的处理

INC BX

INC PLUS_N

LOOP LOOP1

JMP SHOW

XIAOYU:MOV [DI],AL;小于零的处理

INC DI

INC NEGA_N

LOOP LOOP1

SHOW: MOV DL,PLUS_N;屏幕显示输出

MOV AH,2

INT 21H

MOV DL,NEGA_N

MOV AH,2

INT 21H

MOV AH,4CH

INT 21H

CODE ENDS

END BEGIN

5.20

STACK SEGMENT PARA STACK

DB 10H DUP(0)

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,SS:STACK

BEGIN: PUSHF;标志位入压入栈

POP AX;出栈到AX

EXCHANGE AH,AL;高低位互换

PUSH AX;AX压入栈

POPF;弹出到标志寄存器

CODE ENDS

END BEGIN

5.21

DA TA SEGMENT

STR DB ‘INPUT 1 OR 0’,0DH,0AH,‘$’BUFF DB 20 DUP(0)

LEN DW 10

DA TA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DA TA

BEGIN: MOV AX,DA TA

MOV DS,AX

MOV DX,OFFSET STR

MOV AH,09H

INT 21H

MOV BH,48;零的ASCII码

MOV BL,65;A的ASCII码

LEA SI,BUFF

MOV CX,LEN

相关文档
最新文档