《微机原理与接口技术》 洪永强习题答案(3)

2019-08-03 10:28

41564736.doc集 - 9 - 编者:喻其山

NEST: MOV AL,DATX1 [BX] [SI]

MOV DATX2 [DI],AL INC SI INC DI LOOP NEXT

3.17 执行下列指令后,AX寄存器的内容是什么?

TABLE DW 10,20,30,40,50 ;000AH, 0014H, 001EH, 0028H, 0032H ENTRY DW 3

TABLE 0AH ……

00H MOV BX,OFFSET TABLE

14H ADD BX,ENTRY

TABLE+3 00H

MOV AX,[BX]

1EH

答:(AX)=1E00H。存储方式如右图所示:

00H 28H 3.18 分析下面的程序段完成什么功能?

00H MOV CL,04

32H SHL DX,CL

00H MOV BL,AH

3.17题的TABLESHL AX,CL

存储方式 SHR BL,CL

OR DL,BL

答:程序段将 ((DX),(AX)) 的双字同时左移4位,即将此双字乘以10H (16)。 3.19 试写出程序段把DX、AX中的双字右移四位。

3.20 当执行中断指令时,堆栈的内容有什么变化?如何求得子程序的入口地址? 3.21 试述中断指令IRET与RET指令的区别。

3.22 根据给定的条件写出指令或指令序列:

(1)将一个字节的立即数送到地址为NUM的存储单元中? (2)将一个8位立即数与地址为BUF的存储单元内容相加? (3)将地址为ARRAY的存储单元中的字数据循环右移一位? (4)将16位立即数与地址为MEM的存储单元中的数比较? (5)测试地址为BUFFER的字数据的符号位? (6)将AX寄存器及CF标志位同时清零?

(7)用直接寻址方式将首地址为ARRAY的字数组中第5个数送往寄存器BX中?

(8)用寄存器寻址方式将首地址为ARRAY的字数组中第5个数送往寄存器BX中?

(9)用相对寻址方式将首地址为ARRAY的字数组中第8个数送往寄存器BX

41564736.doc集 - 10 - 编者:喻其山

中?

(10)用基址变址寻址方式将首地址为ARRAY的字数组中第N个数送往寄存器BX中?

(11)将首地址为BCD_BUF存储单元中的两个压缩BCD码相加,并送到第三个存储单元中?

第 4 章 汇编语言程序设计

4.1 4.2 4.3 4.4 4.5

什么是汇编语言?什么是汇编语言程序?什么是汇编?什么是汇编程序? 一个完整的汇编语言程序结构上有什么特点? 汇编语言有哪三种基本语句?它们各自的作用是什么?

逻辑运算符与逻辑运算指令中的助记符有完全相同的符号,如何区别它们?作用有何不同?

下面两条语句汇编后,两个字节存储单元NUM1和NUM2中的内容分别是什么?

NUM1 DB (12 OR 4 AND 2) GE 0EH NUM2 DB (12 XOR 4 AND 2) LE 0EH

答:(1)、NUM1中的内容是00H;因为12不大于等于0EH

(2)、NUM2中的内容是0FFH;因为12小于等于0EH 下列指令执行后,字存储单元DA1中的内容是多少? DA1 EQU BYTE PTR DA2 DA2 DW 0ABCDH

……

SHL DA1,1 SHR DA2,1

答:DA1中的内容是55CDH

对下面的数据定义,各条MOV指令单独执行后,有关寄存器的内容是什么?

NUMB1 DB ?

NUMB2 DW 20 DUP(?) NUMB3 DB ?USB?

1) MOV AX, TYPE NUMB1 2) MOV AX, TYPE NUMB2 3) MOV CX, LENGTH NUMB2 4) MOV DX, SIZE NUMB2 5) MOV CX, LENGTH NUMB3

4.6

4.7

41564736.doc集 - 11 - 编者:喻其山

答:1)、(AX)=1

2)、(AX)=2

3)、(CX)=0014H 4)、(DX)=0028H 5)、(CX)=1 4.8

假设程序中的数据定义如下: PNUM DW ?

PNAME DB 16 DUP(?) COUNT DD ?

PLETH EQU $-PNUM

问PLETH 的数值是多少?它代表什么意思? 答:(1)、PLETH 的数值是16H

(2)、表示自PNUM开始到PLETH为止的变量占用的存储单元数。 程序中如何实现对各段寄存器和IP、栈顶的初始化?

4.9

4.10 什么是宏?宏指令的功能是什么?宏与过程在汇编过程中,它们的目标代

码有什么区别? 4.11 简述程序设计的步骤。

4.12 编写程序,不用乘法计算Z=10×X+Y/8,用移位运算。

答: MOV AX, X

SHL AX, 1 ;AX乘2 MOV BX, AX SHL AX, 1 ;AX乘2 SHL AX, 1 ;AX乘2 ADD AX, BX ;8X+2X MOV BX, Y MOV CL, 3 SHR BX ;无符号数Y/8 ADD AX, BX ;10×X+Y/8 MOV Z, AX

4.13 编写程序,建立一数据表,表中连续存放1-9的平方,查表求某数字的平方。

答:TABLE DB 1*1,2*2,3*3,4*4,5*5,6*6,7*7,8*8,9*9

??

MOV BX, OFFSET TABLE MOV AL, n DEC AL XLAT ;n的平方即在AL中 4.14 简述利用跳转表实现多路分支程序设计的思想。地址跳转表和指令跳转表

41564736.doc集 - 12 - 编者:喻其山

只要区别是什么?

4.15 简述分支结构程序设计的注意事项。

4.16 编写程序,将自定义的三个符号数X、Y、Z的最大者送入MAX字单元。

答: MOV AX, X

CMP AX, Y JGE NEXT MOV AX,Y

NEXT: CMP AX, Z

JGE NEXT1 MOV AX, Z

NEXT1: MOV MAX, AX 4.17 在A、B、C中存在有三个数,编写程序完成如下处理:

1)若有一个数为零,则将其它两个量清为零。 2)若三个数都不为零,求它们的和,并送D中。 3)若三个数都为零,则将它们都置一。 答: CMP A, 0

JNZ NEXT CMP B, 0 JNZ NEXT1 CMP C, 0 JNZ NEXT1 MOV A, 1 MOV B, 1 MOV C, 1 JMP OK

NEXT: CMP B, 0

JZ NEXT1 CMP C, 0 JZ NEXT1 MOV AX, A ADD AX, B ADD AX, C MOV D, AX JMP OK

NEXT1: MOV A, 0

MOV B, 0 MOV C, 0

OK: …… 4.18 循环结构程序由哪几部分组成?各部分的功能是什么? 4.19 简述循环结构程序设计的注意事项。

41564736.doc集 - 13 - 编者:喻其山

4.20 编写程序,将以STR1为首地址的字节串传送到以STR2 为首地址的字节

存储区中。 4.21 从偏移量DAT1开始存放200个带符号的字节数据,编写程序,找出其中

最小的数放入DATA2中。 4.22 子程序设计时,有哪些注意事项?

4.23 调用程序和主程序之间是如何进行参数传递的?

4.24 用主程序调用子程序的结构形式,编程实现∑n!=1!+2!+3!+4!+5! (提示:n!

= { ,n! 用n(n-1)!代替,则计算n! 子程序必须用递归调用n!子程序,但每次调用所使用的参数都不同。

第 5 章 输入输出接口

5.1 5.2 5.3 5.4

为什么要在CPU 与外设之间增设接口? 微型计算机的接口一般应具备哪些功能? 接口电路的硬件一般由哪几部分组成?

什么是端口?I/O端口的编址方式有哪些?各有什么特点?8086 系统中采用哪种编址方式?

答:(1)、端口(port)是接口电路中能被CPU直接访问的寄存器的地址。

(2)、端口地址和存储器地址统一编址,也称存储器映射方式;I/O端口

地址和存储器地址分开独立编址,也称I/O映射方式。 (3)、各自的特点:

存储器映射方式的优点:

1)、访问I/O端口可实现输入/输出操作,还可以对端口内容进行算术逻辑运算、移位等等;

2)、能给端口有较大的编址空间,这对大型控制系统和数据通信系统是很有意义的。

存储器映射方式的缺点:

1)、端口占用了存储器的地址空间,使存储器容量减小; 2)、指令长度比专门I/O指令要长,因而执行速度较慢。

I/O映射方式的优点:

1)、I/O端口地址不占用存储器空间;

2)、使用专门的I/O指令对端口进行操作,I/O指令短、执行速度快;

3)、并且由于专门I/O指令与存储器访问指令有明显的区别,使程序中I/O操作和存储器操作层次清晰,程序的可读性强。


《微机原理与接口技术》 洪永强习题答案(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高考英语 完形填空基础练习(17)

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

马上注册会员

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