汇编语言课后习题答案 - - - 郑晓薇(7)

2019-08-31 13:34

cmp ax,0 jnz let1 pop si pop bx pop ax ret

calcu endp

24 写出两数相加运算的子程序。 25 写出两数相减运算的子程序。 26 写出两数相乘运算的子程序。 27 写出两数相除运算的子程序。

28 写出对AX中的二进制数按位相加子程序。 29 编写求数组中最大数的子程序。

30 编制一个计算数组中所有负数之和的子程序。并利用此子程序分别计算A数组和B数组中的负数之和,结果分别放在SUM1和SUM2单元中。 查看正确答案 DATA SEGMENT A DB 9,-8,-7,6,5 B DB -8,7,6,-5,4 SUM1 DB ? SUM2 DB ? DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV CX,5

MOV SI,OFFSET A CALL LADD MOV SUM1,BL MOV SI,OFFSET B CALL LADD MOV SUM2,BL MOV AH,4CH INT 21H

LADD PROC NEAR PUSH CX

PUSH AX PUSH SI XOR BL,BL

NEXT: MOV AL, [SI] AND AL,AL JNS JJJ ADD BL,AL JJJ: INC SI LOOP NEXT POP SI POP AX POP CX RET

LADD ENDP CODE ENDS END START 习题八

1 宏的作用是什么?宏是一种程序结构吗? 2 分别解释宏定义、宏调用、宏展开。 3 宏与子程序的区别是什么?

4 宏指令是什么?它能被翻译成机器代码吗?

5 写出宏调用的过程和子程序调用的过程,并对二者做一对比。 6 宏是怎样实现传参的?请与子程序传参进行对比。 7 请举例说明宏的变元是操作数和变元是操作码的用法。 8 利用宏可以定义多个存储单元吗?如何定义? 9 在宏定义中可以使用标号吗?是否需要说明? 10 在宏定义中能否出现分支程序段? 11 如何建立宏库?怎样打开宏库? 12 结构伪操作的作用是什么?

13 请举例说明结构预置和结构引用的用法。

14 写出重复汇编和条件汇编的主要作用。它们可以生成机器代码吗? 15 编写多模块程序时,需要加入哪些参数设置? 16 分析下列宏定义,指出它的作用。 EXM1 MACRO X1 MOV AH,X1 INT 21H ENDM

查看正确答案

宏的作用:DOS功能调用。功能号用哑元指出。 17 解释下列宏的功能。 EXM2 MACRO A,B,C MOV AX,A ADD AX,B MOV C,AX ENDM 查看正确答案

宏的作用:两个操作数相加,结果保存在第3个数中。 18 指出下列宏的作用。 EXM3 MACRO C1 MOV AH,2 MOV DL,C1 INT 21H ENDM 查看正确答案

宏的作用:DOS的2号显示功能。 19 分析下列宏,指出它的作用。 EXM4 MACRO A1,A2 VALUE DW A1 DUP(A2) ENDM 查看正确答案

宏的作用:定义VALUE数组,数组长度和初值由哑元指出。

20 下列宏是一个分支程序,宏定义中缺少标号的处理。请添加,并指出宏的功能。 EXM5 MACRO B1,B2 MOV AL,B1 SUB AL,B2 JNS LETT1 NEG AL LETT1:RET ENDM 查看正确答案

缺少标号定义LOCAL LETT1。宏的作用:两个哑元相减,结果为负则求补。 21 定义宏。完成两个操作数相乘,乘积在第3个操作数中。 22 分别写出子程序使用的保护现场和恢复现场的宏。 23 定义键盘输入一个字符的宏指令INPUT。

24 定义显示一个字符的宏指令OUTPUT,要显示的字符用哑元DISP表示。 25 定义宏指令KEY_STR,实现从键盘输入一串字符。 26 定义宏指令DISPLAY,显示一串字符。

27 利用宏指令INPUT和OUTPUT实现将键入的大写字母变为小写显示。 查看正确答案 程序: .model small .stack 100h .code start:

input ;键盘输入

add al,20h ; 大写变为小写 output al ; 显示 mov ah,4ch int 21h end start

28 用宏指令DISPLAY显示存储单元ALPHA中的字符串?Computer?。 查看正确答案 程序: .model small .data

alpha db ?Computer? .code start:

display alpha ;显示字串 mov ah,4ch int 21h end start

29 编程序。在键盘输入时,调用宏指令INPUT。对输入的字符判断是否为负号“-”,是则对X求补,不是则继续输入。 查看正确答案 程序: .model small .stack 100h .code start:

input ;键盘输入

cmp al,?-? jnz start neg x ;求补 mov ah,4ch int 21h end start

30 编程序。键盘输入两个一位的十进制数,做加法运算。加法结果调整为非压缩的BCD码,并显示出十进制结果(4-8.asm)。要求改用调用宏INPUT和宏OUTPUT实现键盘输入和显示部分。 查看正确答案 程序: .model small .stack 100h .code start:

input ;键盘输入 mov bl,al

input ;输入第2个数 add al,bl mov ah,0

aaa ;非压缩BCD码加法调整 add ax,3030h output ah ;显示高位 output al ;显示低位 mov ah,4ch int 21h end start 习题九

1 软件中断都有哪些?CPU是如何处理的?

2 硬件中断发生时,CPU怎样获知?CPU如何处理硬件中断? 3 中断的重要性是什么?若没有中断系统,微机能否工作?

4 什么是中断向量?什么是中断向量表?80X86系统的中断向量表在哪儿? 5 80X86系统可以有多少个中断类型?中断类型号是如何划分的? 6 给出一个中断类型号,如何得到其中断向量?

7 每个中断类型都有一个中断处理程序吗?中断处理程序在那儿存放? 8 中断过程和子程序调用过程一样吗?有何异同? 9 中断返回指令和子程序返回指令作用一样吗?

10 子程序可以嵌套调用,中断可以嵌套吗?嵌套的条件是什么?


汇编语言课后习题答案 - - - 郑晓薇(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2016-321垫忠高速公路谭家寨隧道左洞病害整治工程交通组织方案(

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: