在8086与8088相同的是/8088系统中,条件转移的范围是 ( ) A、 0~256H B、 -128~+127 C、 0~65535 D、 -32768~32767

计算机微机原理与应用(一)
1、对于二进制码,若其表示的真值为-128,则它是(&&&
A)原码&&&&
B)反码&&&&
C)补码&&& D)移码
2、在(&&&
)表示中,二进制数表示的十进制数-1
A)原码&&&&
B)反码&&&&
C)补码&&& D)移码
3、8位二进制补码的表数范围为(&&&
A)-127-+127&&&&&
B)-128-+128
C)-127-+128&&&&&
D)-128-+127
4、汉字“波”的区位码是1808,则其内码为(&&&
A)3828H&&&&&&
0B2A8H&&&&&&&
5、INTEL8086CPU一切复位信号至少维持(&&&
)个时钟周期的高电平有效。
C)3&&& D)4
8086cpu经加电复位后,执行第一指令的地址是(&&&
A)00000H&&&&&&
C)FFFF0H&&&&&
8086CPU的地址总线为(&&&
A)16根&&&&
C)24根&&&&&
8086cpu的数据总线为(&&&
A)8根&&&&&
C)16根&&&&
9、Intel8086cpu有最大工作模式和最小工作模式两种,最小工作模式时由(&&&
A)MIN/MAX=H电平&&&&
B)MIN/MAX=L电平
C)HOLD=H电平&&&&&&&
D)HOLD=L电平
10、微型计算机数据总线的信号状态是(&&&
A)单向双态&&&&&&
B)单向三态
双向双态&&&&&&
D)双向三态
11、微型机中地址总线的作用是(&&&
A)用于选择存储器单元
B)用于选取择进行信息传输的设备
C)用于指定I/O设备的接口
D)用于指定存储器单元和I/O设备接口电路的选择地址
12、微机中地址总线提供(&&&
A)存储器和I/O设备的地址码
B)所有存储器和I/O设备的时序信号和控制信号
C)来自I/O设备和存储器的响应信号
D)上述B、C 
13、计算机使用总线结构便于增减外设,同时(&&&
A)减少了信息的传输量
B)提高了信息的传输量
C)减少了信息传输线的条数
14、8086的控制标志有(&&&
15、用来表示堆栈指针的寄存器是(&&&
A)Ip&&& B)bp
16、计算机的主存容量为2048kb,这里2048kb为(&&&
A)2*1024&& B)2*2^20
C)& D)2048
17、某计算机的主存为3kb,则内存地址寄存器需(&&&
)位就足够了
A)10&& B)11&
C)12&& D)13
18、若256kb的sram具有8条数据线,则它具有(&&&
)条地址线
B)15&&&&&
C)20&&& D)18
19、计算机的内存可采用(&&&
A)ram和rom&&
B)ram&& C)rom
&&&D)磁盘
20、2114芯片有1024个存储单元,每个单元能存储4位二进制数据,其有(&&&
)条地址线。
C)10&& D)8
21、可编程的只读存储器(&&&
A)不一定可改写的
B)一定是可改写的
C)一定是不可改写的
22、下面的说法中(&&&
)是正确的
A)EPROM是不可改写的
B)EPROM是可改写的,所以是一种读写存储器
C)Eprom是可改写的,但它不能作为读写存储器
D)Eprom只能读写一次
23、容量为8kb的ram的起始地址为2000h,则其终止地址为(&&&
A)21ffh&&
B)23ffh&&
C)27ffh&& D)3fffh
24、intel8086微处理器
存储器寻址空间大小为(&&&
&&&B)640KB&&&
C)1MB&& D)8MB
25、存储器是计算机系统的记忆存储设备,它主要用来(&&&
A)存放数据
B)存放程序
C)存放数据和程序
D)存放微程序
26、一个高性能的微机系统为满足用户希望的编程空间大、存取速度快、成本低等要求,常采用(&&&
)、主存、外存三级存储体系。
C)cache&& D)flash memory
27、某微型计算机系统,操作系统保存在软磁盘上,内存储器应该采用(&&&
A)Ram&& B)Rom
&&&C)Eprom
&&D)Eeprom
28、设采用2k*4位芯片,按全译码方法组成的地址线有16条,存储单元为字节的存储器,当该存储器被扩充成最大容量时,需在此种存储器芯片的数量是(&&&
&&C)64片&&
29、现在微型计算机的主板上都带有cache存储器,这个cache存储器是(&&&
A)硬盘与主存之间的缓存
B)软盘与主存之间的缓存
C)cpu与视频设备之间的缓存
D)cpu与主存储器之间的缓存
30、Eprom是指(&&&
A)只读存储器
B)可编程的只读存储器
C)可擦除可编程的只读存储器
D)电可擦除可编程的只读存储器
31、为解决cpu和主存的速度匹配问题,可采用(&&&
A)辅存&&&&&&&
B)高速缓冲存储器
C)光盘&&&&&&&
32、主存与辅存的区别不包括(&&&
A)是否按字节或字编址
B)能否长期保存信息
C)能否运行程序
D)能否由cpu直接访问
33、外存储器存取速度最快的是(&&&
A)磁带存储器
B)硬磁盘存储器
C)软磁盘存储器
34、断电后会丢失信息的是(&&&
C)SAM&&&&
35、某存储芯片为2k*8bit,在按字节编址中,若此芯片首地址为
2800H,那么它的末地址是(&&&
A)28FFH&&&&
B)2FFFH&&&
C)3000H&&&&
36、有关高速缓冲存储器cache,说法正确的是(&&&
A)只能在cpu以外
B)cpu内外都可设置cache
C)只能在cpu以内
D)若存在cache,cpu就不能再访问内存
37、Cpu不能直接访问的是(&&&
&&&C)内存&&&&
38、访问存储器时,读出的信息或将写入的信息要经过(&&&
A)数据寄存器
B)指令寄存器
C)地址寄存器
39、在程序的执行过程中,cache与主存的地址映射是由(&&&
A)操作系统来管理的
B)程序员调度的
C)由硬件自动完成的
40、某计算机的字长是16位,它的存储容量是64kb,若按字编址,那么它的寻址范围(&&&
A)0~64kb&&&
B)0~32KB&&&
C)0~64KB&&&
41、存储单元是指(&&&
A)存放一个二进制信息位的存储元
B)存放一个机器字的所有存储元集合
C)存放一个字节的的所有存储元集合
D)存放两个字节的所有的存储元集合
42、跟外存储器相比,内存器的特点是(&&&
A)容量大、速度快、成本低
B)容量大、速度快、成本高
C)容量小、速度快、成本高
D)容量小、速度快、成本低
43、提高主存工作速度的方法是(&&&
A)在主存与cpu之间增加高速缓冲存储器
B)增加主存的容量
C)采用虚拟存储器
D)使用辅助存储器
44、高速缓冲存储器采用(&&&
B)DRAM&& C)ROM
&&&D)EPROM
45、指令系统中采用的不同寻址方式的目的主要是(&&&
A)实现程序控制和快速查找存储单元地址
B)可以直接访问主存和外存
C)缩短指令长度,扩大寻址空间,提高编程灵活性
D)降低指令译码难度
)式提供对实现程序浮动提供支持
A)变址寻址&&&
B)相对寻址
C)间接寻址&&&
D)寄存器间接寻址
47、变址寻址方式中,操作数的有效地址是(&&&
A)基址寄存器的内容加上形式地址
B)程序计数器的内容加上形式地址
C)变址寄存器的内容加上形式地址
48、下列指令中不会改变IP寄存器内容的是(&&&
&&&&B)JMP&&&
C)CALL&&&&
49、8086cpu经加电复位后,执行第一条指令的地址是(&&&
A)00000H&
B)FFFFH&&
C)FFFF0H&&&&&
50、8086cpu地址总线有(&&&
C)24&&& D)32
51、8086cpu的数据总线有(&&&
C)16&&& D)32
52、某计算机主存容量为3kb,则内存地址寄存器需(&&&
C)12&&& D)13
53、某计算机主存容量为2048kb ,这2048kb
,即为(&&& )字节
A)2*230&&&
&&B)2*220
C)&& D)2048
54、计算机的内存可采用(&&&
A)RAM和ROM&&&
B)RAM&&&&
&&&D)磁盘、
55、若256kb的sram具有8条数据线,则它具有(&&&
C)20&&& D)18
56、下列四条指令语句中,(&&&
DS,2000H&&&
B)ADD DX,[BP]
AX,200&&&&&
D)MOV AX,ARRAY[SI+2]
57、假设VAL为变量,mov bx,offset
var的寻址方式是(&&&
A)直接寻址&&&&
B)间接寻址
C)立即寻址&&&&
D)存储器寻址
58、下面四个寄存器中,不能作为间接寻址的寄存器是(&&&
B)dx&&& C)bp
59、用来表示堆栈指针的寄存器是(&&&
C)SP&&& D)SS
60、下面指令中,源操作的寻址方式为直接寻址的指令是(&&&
A)add ax,word
ptr[bx+si]&&&&
B)add ax ,b
cx&&&&&&&&&&&&&&&&&
D)mov bx, 7fffh
61、执行下列mov sp,1000h push ax
指令后,sp寄存器的值是(&&&
A)OFFEH&&&&
C)1001H&&&&&
62、完成将有符号数bx的内容除以2的正确指令是(&&&
A)shr bx,1&&&
B)sar bx,1
C)ror bx,1&&&
D)rcr bx,1
63、在程序运行过程序中,确定下一条指令的物理地址的计算表达式是(&&&
A)cs*16+ip&&&
B)dx*16+di
C)ss*16+sp&&&
D)es*16+si
64、在计算机的许多应用场合,人们总是用汇编语言编制应用程序,原因是汇编语言(&&&
A)比高级语言好懂
B)比机器语言便于编程且比高级语言运行速度快
C)比机器语言执行速度快
D)比其他语言好移植
65、用汇编语言编制的程序称为(&&&
A)目标程序&&&&
B)编译程序
C)解释程序&&&&
66、用汇编语言编制的程序需经(&&&
)后才能在计算机上运行
A)装载到计算机&&&&
B)编译并连接
C)解释&&&&&&&&&&&&
67、在汇编语言中有3种指令:其中(&&&
)于定义常数,变量。内存空间的分配和定位,它一般在编译程序时被解释。
A)伪指令&&&&&
B)机器指令
C)宏指令&&&&&
68、在汇编者按语言中有3种指令:其中伪指令用于定义常数、变量,内存空间的分配和定位,它一般在(&&&
A)程序运行时&&&&
B)编译程序时
C)连接时&&&&&&&&
D)编写源程序时
69、在汇编语言中有3种指令:其中(&&&
)cpu设计时被定义,并在编译时控制计算机操作,但不产生目标代码
A)伪指令&&&&
B)机器指令
C)宏指令&&&&
70、在汇编语言在有3种指令:其中伪指令在cpu
设计时被定义,并在(&&&
)控制计算机操作,不产生目标代码
A)程序运行时&&&&&&
B)编译程序时
C)连接时&&&&&&&&&&
D)编写源程序时
71、在汇编者按语言中有3种指令:其中一种指令是(&&&
),它用于代表一段程序,它在编写源程序时定义。
A)伪指令&&&&&
B)机器指令
C)宏指令&&&&&
72、在汇编语言中有3种指令:其中一种指令是宏指令,它用于代表一段程序,它在(&&&
A)计算机设计时&&&&&&
B)编译程序中
C)编写源程序时&&&&&&
D)程序运行时
73、一般地,我们将计算机指令的集合称为(&&&
A)机器语言&&&&&&
B)汇编语言
C)模拟语言&&&&&&
D)仿真语言
74、计算机系统软件中的汇编程序是一种(&&&
A)汇编语言程序
B)编辑程序
C)翻译程序
D)将高级语言程序转换成汇编语言程序的程序
75、寄存器间接寻址方式中,操作数在(&&&
A)通用寄存器&&&&&
C)主存单元&&&&&&&
D)段寄存器
ax,es:[bx][si]的源操作数的物理地址是(&&&
A)16d*(ds)+(bx)+(si)&&&&&&
B)16d*(cs)+(bx)+(si)
C)16d*(ss)+(bx)+(si)&&&&&&
D)16d*(es)+(bx)+(si)
77、表示一条指令的存储单元的符号类型是(&&&
A)标号&&&
B)变量&&&&
C)偏移量&&&&
78、变量的类型属性如下,下面错误的类型是(&&&
A)字节型&&&&
C)字符型&&&&
79、在数据传送方式中,dma方式与中断方式相比,主要优点是(&&&
A)传送速度快
B)cpu可以分时工作
C)传送程序简单
D)cpu不必查询i/o口状态
80、在微型计算机中将各个主要部件连接起来,并使它们组成一个可扩充的计算机的基本的总线称之为(&&&
A)局部总线&&&&
B)内部总线
C)外部总线&&&&
D)系统总线
81、采用dma方式中,在存储器与i/o设备间进行数据传输:对于计算机来说,数据的传送要经过(&&&
A)cpu&&&&&&&&&
B)dma通道
C)系统总线&&&&
D)外部总线
82、在外存储器中,信息保存时间最长的是(&&&
A)磁带&&&&
C)硬磁盘&& D)光盘
83、在外存储器中,存取速度最快的是(&&&
A)磁带&&&&&
C)硬磁盘&&&
84、在dma传送方式下,外部设备与存储器之间的数据传送通路是(&&&
A)数据总线db&&&&&&&&
B)专用数据通路
C)地址总线ab&&&&&&&&
D)控制总线cb
85、在下述几种输入/输出中,比较适宜使用dma传送方式是(&&&
A)磁盘输入输出操作
B)字符打印操作
C)慢速而大量的数据采集
D)数据量少而频繁的数据传送
86、主机与设备传送数据时,采用(&&&
),主机与设备是串行工作的
A)程序查询方式&&&&
B)中断方式&&&&
C)dma方式
87、当采用(&&&
)作时,除非计算机等待,否则无法传送数据给计算机
A)程序查询方式&&&
B)中断方式&&&&&
C)DMA方式
88、输入/输出外围设备与主机交换信息采用dma方式的特点是(&&&
A)cpu与设备串行工作,传送与主程序串行工作
B)cpu与设备并行工作,传送与主程序串行工作
C)cpu与设备并行工作,传送与主程序并行工作
D)cpu与设备串行工作,传送与主程序并行工作
89、输入/输出外围设备与主机交换信息采用中断方式的特点是(&&&
A)cpu与设备串行工作,传送与主程序串行工作
B)cpu与设备并行工作,传送与主程序串行工作
C)cpu 与设备并行工作,传送与主程序并行工作
D)cpu与设备串行工作,传送与主程序并行工作
微机计算机原理与应用
1、C 2、C 3、D 4、C 5、D 6、C 7、B 8、C 9、A 10、D
11、D 12、D 13、C 14、D 15、C 16、B 17、C 18、D 19、B
20、C&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
21、A 22、C 23、C 24、C 25、C 26、A27、C28、C 29、D 30、C
31、B 32、A 33、B 34、B 35、B 36、B 37、D 38、A 39、A 40、B
41、B 42、C 43、A 44、A 45、C 46、B 47、C 48、D 49、C 50、B
51、C 52、B 53、C 54、A 55、D 56、A 57、A 58、B 59、B 60、B
61、A 62、B 63、A 64、B 65、D 66、B 67、A 68、B 69、A 70、B
71、C 72、C 73、A 74、C 75、C 76、D 77、A 78、C 79、A 80、D
81、C 82、D 83、C 84、A 85、A 86、A 87、A 88、C 89、B
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。微机原理与接口技术练习题(有答案)_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
微机原理与接口技术练习题(有答案)
&&微机原理与接口技术的复习题
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
加入VIP
还剩4页未读,
定制HR最喜欢的简历
你可能喜欢您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
2012微机原理复A习题(物流工程).doc 10页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
你可能关注的文档:
··········
··········
一、单项选择题
A、个人计算机
B、小型计算机
C、微机系统
D、微处理器
2、十六进制30H表示ASCII码字符“0”,那么十六进制39H表示ASCII码字符()
3、下列4个无符号数十进制整数中,能用8个二进制位表示的是()
4、 计算机中常用的BCD码是()
A、二进制数
B、十六进制数
C、二进制编码的十进制数 D、以上都不对
5、微处理器8086从功能上把内部结构分为两大部分,即()
A、CPU、ALU
B、ALU、BIU
C、EU、BIU
D、CPU、BIU
6、1MB是()
7、由CS和IP的内容表示的是()
A、可执行代码的长度
B、当前正在执行的指令的段地址和偏移地址
C、下一条待执行的指令的段地址和偏移地址
D、代码段的首地址
8、8086的IP中存放的是()
A、当前正在执行的指令
B、下一条要执行的指令
C、下一条要执行的指令的偏移地址
D、指令中的操作数
9、如果(CS)=1800H,(IP)=8000H,则微处理器要执行的下条指令的物理地址为()
10、8086 CPU具有()根地址线,()数据线
C、20,16 D、20,8
11、的状态标志有()个,控制标志有()个
12、CPU中运算器的主要功能是()
A、算术运算
B、逻辑运算
C、函数运算和浮点运算
D、算术运算和逻辑运算
13、当CPU时钟频率为5MHz时,则其一个基本总线周期是()
14、在8086中,一个基本的总线周期由4个时钟周期(T状态)组成,在T1状态,CPU往总线上发()信息
15、8086CPU访问一次存储器或I/O接口所花的时间,称为一个()
A、时钟周期
B、总线周期
C、指令周期
D、基本指令执行时间
16、8088的分时复用的数据/地址的宽度为()
17、8086能访问的存储器空间的大小是()字节
18、8088CPU复位后,程序重新开始执行的逻辑地址是()
A、FFFFH:FFF0H
B、FFFFH:0000H
C、0000H:FFFFH
D、0000H:0000H
19、8086 CPU中,()引脚信号是决定最大或最小工作模式的控制信号。
?A、??? ? B、
20、由最小方式改为最大方式,应改接的引脚是()
21、8086工作在最大方式下,总线控制器使用芯片()
22、为8086提供地址锁存,需要()
A、2片8282
B、3片8282
C、2片8286
D、3片8286
23、8086工作在最小方式下进行写内存操作,引脚、是()
24、8088工作在最小方式下,引脚、、是()表示读I/O端口操作
25、受CLI和STI 指令控制的中断是(
D、单步中断
26、在微机系统中,可访问的I/O端口地址范围为(
A、000H — FFFH
B、000H — 3FFH
C、00000H — FFFFFH
D、0000H — FFFFH
27、一个数据的有效地址是2140H,(DS)=1016H,则该数据所在内存单元的物理地址为()
28、CPU对INTR中断的响应过程是执行()总线周期。
29、8086在响应中断请求时()
A、输出一个负脉冲,将中断类型码从AD0-AD7读入
B、输出两个负脉冲,在第一个负脉冲时
正在加载中,请稍后...当前位置: >>
微机原理练习测验题(答案仅供参考)
微机原理练习测验题(答案仅供参考) 选择题:166 个 填空题:103 个 判断题:161 个 简答题:27 个 程序题:13 个 合计:470 个 一、选择题 1.运算器与控制器统称为: A.微形计算机 B.程序 C.CPU 2.一个字节的数据包含多少个二进制位: A.1 位 B.8 位 C.不定 3.一个字的数据包含多少个二进制位: A.1 位 B.8 位 C.不定 4.微型计算机系统包括哪几个部分: A.CPU,存储器,I/O 接口 B.CPU,存储器,I/O 接口及程序设计语言 C.微 型计算机的硬件及相应的软件 5.C++是一种什么软件: A.监控程序 B.程序设计语言 C.应用软件 6.按总线上传输信息类型区别,可将总线分为哪几类: A.通讯总线,地址总线,系统总线 B.数据总线,信息总线,片 总线 C.地址总线,数据总线,控制总线 7.通用寄存器的作用是:A.暂存指令代码等信息 B.暂存一些 CPU 运行状态及标志等信息 C.暂存一些运算中 间结果等信息 8.累加器 A 的作用是:A.具有将有关内容累加的功能 B.提供运算的一个操作数 C.可以进行移位等操作 12.无符号运算会产生。 A.进位 B.补码 C.溢出 13.C128D 的双字节补码是 A.0FFH B.0FFFFH C.0F128H 14.&0&―&9&的 ASCII 码是: A.30―39 B.30H―39H C.0---9 15.8086 内存最大的扩充空间是: A.64K B.1M C.20 16.8086CPU 内部由下列部件组成: A.ALU、BIU 及通用寄存器 B.EU 与 BIU C.EU、通用寄存器、指令队列 17.指令队列内是否包含下一条要执行的指令:A.是 B.不是 C.不一定 18.设 AX=0F13EH,则 AH 等于: A.0FH B.0F1H C.13H 19.ZF 标志=1 表示: A.某寄存器内容为零 B.某寄存器内容不为零 C.某次运算结果为零 20.各指针寄存器中存放的是: A.偏移地址 B.段地址 C.实际地址 21.运算器与控制器统称为: A.微形计算机 B.程序 C.CPU 22.一个字节的数据包含多少个二进制位: A.1 位 B.8 位 C.不定 23.一个字的数据包含多少个二进制位: A.1 位 B.8 位 C.16 位 24.8284A 由几种产生时钟脉冲的方法: A.一种 B.两种 C.三种 25.一个总线周期最多可以包含几个时钟周期: A.4 个 B.5 个 C.5 个以上 26.时钟周期、总线周期、指令周期之间的关系是:A.时钟周期&总线周期&指令周期 B.时钟周期&总线周期&指 令周期 C.时钟周期&总线周期&指令周期 27.最小方式下 8086 典型系统中 8282 功能是: A.产生时钟脉冲 B.地址锁存 C.提高驱动力 29.8086 最小系统中,三总线只能由 8086 控制: A.是 B.不是 C.数据总线是,其他不是 33.地址总线上总是输出存储器地址信号: A.是 B.不是 C.不一定 34.最大方式下,系统的芯片数比最小方式系统的芯片数: A.多 B.少 C.不一定 35.最大方式下 RQ/GT1、RQ/GT0 分别相当于最小方式下的 HOLD 与 HLDA: A.对 B.错 C.不一定 36.8288 输出的/MRDC 与 8086 最小方式输出的/RD 功能: A.一样 B.不一样 37.基本的总线读周期需要几个 T 状态: A.1 个 B.4 个 C.多于 4 个 38.等待状态可以持续几个 T 状态: A.0 个 B.1 个 C.1 个或更多 39.8086 在什么状态采样 READY 信号: A.T1 B.T3 C.T3 及 Tw 40.可以用什么信号作为地址锁存允许信号: A./BHE B.ALE C.DT/R /DEN 41.8288 的普通写与超前写的区别是: A.有效电平不同 B.有效时间不同 C.功能不同 42.最小方式与最大方式下,8086 的总线请求与响应各使用的是几个引脚:A.1,2 B.2,1 C.2,2 D.1,1 43.中断类型号是在中断响应周期什么时候读入 CPU 的: A.第二个中断响应信号有效期间 B.第一个中断响应信号有效期间 C.ALE 有效期间 44.实际地址、段地址、有效地址分别是多少位 16 进制码: A.5,4,4 B.20,16,16 C.5,4,5 D .20,16,20 45.8086 系统 1M 内存空间最多能分成多少个不同的段:A.16 个 B.64K 个 C.256 个 D.20 个 46.字数据只能采用规则存放: A.是 B.不是 C.不一定 47 由某单元的物理地址即可确定其逻辑地址,或由逻辑地址即可确定其物理地址: A.是、是 B.不是、不是 C.是、不是 D.不是、是 48.堆栈中的单元只能采用先进后出的方式访问: A.对 B.错 49.8086CPU 的 PUSH 指令执行时: A.先推数据,再将 SP-2 B.先将 SP-2,再推数据 C.先推数据,再将 SP+2 D.先将 SP+2,再推数据 50.8086CPU 的 POP 指令执行时: A.先弹数据,再将 SP+2 B.先将 SP+2,再弹数据 C.先弹数据,再将 SP-2 D.先将 SP-2,再弹数据 51.8086 系统中,I/O 端口地址: A.只能采用内存映像编址 B.只能采用独立编址 C.既可以采用独立编址,又能采用内存映像编址 52.固定寻址方式中没有操作数: A.对 B.错 53.一种处理器有两套指令,即助记符指令及机器指令: A.对 B.错 54.寄存器寻址就是操作数所存放的地址在某一寄存器中:A.对 B.错 55.存储器寻址表示了指令中的操作数: A.本身 B.在内存中的偏移地址 C.内存中的段地址 56.存储器寻址方式中,缺省段地址是 SS 的间址寄存器是:A.SP 间址 B.BP 间址 C.BX 间址 57.能进行间接寻址的间址寄存器有: A.4 个 B.6 个 C.8 个 58.计算指令执行时间时,不计入取指时间是因为: A.取指时间很短,可忽略不计。 B.取指与执行指令基本并行。 C.取指时间是固定的,不需要单独计算。 59.指令的执行时间正比于: A.时钟周期 B.寻址方式所用的时间 C.执行的总线周期个数 60.教材中所列的各指令&基本执行时间”,是否已经包括必须的(即假设为规则存放的字)访问总线周期的时间。 A.是 B.否 61.LDS 指令要求源操作数必须为: A.一个 16 位寄存器 B.一个存储器操作数 C.一个有效地址 62.LES 指令传送的是: A.源操作数的值 B.源操作数的偏移地址 C.源操作数的物理地址 63.无符号数相加与有符号数相加,是否使用同样的指令: A.是 B.否 64.两无符号数相加造成 OV 标志为 1,有何意义: A.无意义 B.相加有溢出 C.相加有进位 65.ADC 指令将两操作数相加,再加上进位值 1: A.对 B.错 66.对任意 2 个操作数使用 ADD 相加后,再用 DAA 或 AAA 都能得到正确的 BCD 码结果: A.对 B.错 67.对负数(补码)用求补指令得到的结果总是原数的绝对值: A.对 B.错 68.比较两符号数大小,应根据: A.CF,SF 标志 B.OF,ZF 标志 C.ZF,SF,OF 标志 69.两单字节带符号数用 IMUL 相乘,结果为:A.单字节带符号数 B.双字节无符号数 C.双字节带符号数 70.AAM 对乘法调整,乘法的 BCD 码结果应: A.小于 65536 B.小于 9999 C.小于 99 D.小于 256 71.双字节无符号数,除以单字节非零的无符号数,商肯定可以用单字节表示: A.对 B.错 72.带符号数将其字长扩充 1 倍,而值不变,只需要: A.将高半部分补全&0” B.将高半部分补全&1” C.将原最高位 扩充到高半部分 73.MOV AX,0 和 XOR AX,AX 两条指令: A.实现的功能完全一样 B.都将 AX 清零 C.执行后 AX 值不 一致 74.SAL,SAR 指令分别能将什么数乘以 2: A.无符号数无符号数 B.无符号数带符号数 C.带符号数 无符号数 D.带符号数带符号数 75.REPE 前缀实现: A.结果相等时,继续重复 B.结果相等时,结束重复 76.串操作指令源,目的串操作:A.DS:SI 与 DS:DI 指向 B.ES:SI 与 ES:DI 指向 C.DS:SI 与 ES:DI 指向 77.MOVS 指令传送的串类型: A.仅能为字节串 B.仅能为字串 C.可以为字节串及字串 78.串搜索指令搜索的串是: A.由 DS:SI 指向 B.ES:DI 指向 C.两者都可以 79.近转移,远转移转移的范围是:A.±32K 以内与±32K 以外 B.64K 以内与 64K 以外 C.同一段内与不同段之间 80.短转移转移范围是: A.256 字节以内 B.同一段内 C. -128~+127 范围内 81.调用指令执行时,总是要将断点地址的 CS 与 IP 值推入堆栈: A.对 B.错 82.调用指令执行完后,堆栈指针指向: A.最后推入断点地址的单元 B.最后推入断点地址单元的上一个单元(地址较 低的单元) C.-128~+127 范围内 83 RETn 指令执行后,堆栈指针指向对应的 CALL 指令执行前的堆栈指针的位置 A.是 B 不一定 84.条件转移类指令有: A.近转移、短转移、远转移 B.只有近转移 C.只有短转移 85.LOOPNZ 意味着: A.CX=0 且标志为 1 时转移结束循环 B.CX=0 或 ZF 标志为 0 时结束循环 C.CX=0 或 ZF 标志为 1 时结束循环 86.LOOPNZ 意味着: A.设置串操作地址增方向与关中断 B.设置串操作地址减方向与开中断 C.设置串操作地址增方向与开中断 87.中断指令与子程序调用指令执行的操作是一样的: A.对 B.错 88.子程序返回指令可代替中断返回指令: A.对 B.错 89.8086 类型 0,类型 1,类型 3 是否由中断指令引起: A.是是否 B.否否是 C.否是是 D.否否否 90.BIOS 是由 DOS 系统提供的: A.对 B.错 91.使用 INT20H 中断返回 DOS 方法是: A.直接使用 INT20H B.转移到 PSP 中调用 INT20H 指令 92.汇编程序指的是: A.用汇编语言编写的程序 B.一种应用程序,它进行汇编操作对某 C.程序进行整理和编辑工作 93.机器指令、高级语言中的语句、汇编语言助记符指令之间的关系是: A.一条高级语言中的语句对应一条机器指令 B. 一条汇编语言助记符指令对应一条机器指令 C.一条汇编语言助记符指令对应一条高级语言中的语句 94.伪指令是: A.格式不正确的指令 B.不会在内存中产生代码和数据 C.仅对汇编过程有影响 95.标号的类型属性有: A.NEAR B.DW C.偏移量 96.变量类型属性有: A.FAR B.双字 C.段地址 97.以下哪些表达式是合法的: A.AX+BX B.[SI+1] C.AX/5 D.10/5 E.AX MOD 5 F.SEGAX G.offsetSI H.TYPEAX 98.若 Var1 与 Var2 为 2 个内存变量,则表达式 Var1-Var2 表示: A.两变量的差 B.两变量偏移地址之差 C.两变量的段地 址之差 99.常数是否具有操作数类型: A.有 B.没有 C.不一定 100.[SI]的类型是: A.字 B.字节 C.不确定 101.DW 20 DUP(?,5)分配了几个字节: A.240 B.40 C.80 D.60 102.定义一个结构是否同时分配了相关的内存单元: A.是 B.不是 C.不一定 103.EQU 与 DB 伪指令是否分配内存单元: A.是,是 B.是,否 C.否,是 D.否,否 104.ASSUME 伪指令能设置 CPU 中段寄存器的值: A.是 B.否 C.不一定 105.ORG 设定当前可分配内存单元的: A.段地址 B.偏移地址 C.类型 106.一个程序只能用段定义伪指令定义 4 个段或 4 个以下的段: A.对 B.错 C.不一定 107.段定义伪指令定义的段中,偏移地址总可以从零开始: A.对 B.错 108..exe 文件与.com 程序代码量能否超过 64K: A.能,能 B.能,否 C.否,能 D.否,否 109..com 文件中用户代码入口是否能定义在 64K 中任意位置: A.能 B.不能 C.不一定 110.单字节无符号数乘以单字节无符号数,结果类型是: A.单字节无符号数 B.双字节无符号数 C.3 字节无符号数 D.4 字节无符号数 111.两单字节相加,结果类型是:A.单字节 B.双字节 112.有符号数比较大小与无符号数比较大小采用的条件转移指令: A.不同 B.相同 C.不一定 113.LOOP 指令使用哪一个寄存器作为循环计数: A.AX B.BX C.CX D.DX 114.循环控制部分一定放在循环处理以后: A.对 B.错 115.在高级语言中,若多种循环出现&交叉”的错误,系统往往会提示出来,汇编语言的程序出现错误时,CPU 是否会提出 呢? A.是 B.否 116.在软件中只使用一次的功能编写成子程序完全没有必要: A.对 B.错 117.子程序的属性说明了本子程序:A.规模与大小 B.是否通用 C.是否能浮动 D.与调用指令是否在同一段 E. 与调用指令是否相隔超过 64k 的距离 118.通过寄存器传递参数比通过内存传递参数的优点是:A.能传递更多得参数 B.存取更方便 C.能确保正确调用 119.通过堆栈传递参数,在子程序中使用BP间址取得参数的原因是:A.BP 没有被占用 B.BP 间 址 速 度 较 快 C.BP 间址是对堆栈段进行 120.冒泡法算法程序的循环之中,设置 BL=-1 的目的是:A.减少循环次数 B.设置大小比较结果 C.减少每次循环 中交换比较次数 121.使用 INT21H2 号功能显示 16 进制数码,需要: A.直接将数码送 DL B.将该数码加 30H 再送 DL C. 将 该 数码加 30H 或加 37H 再送 DL 122.32 位数乘以 32 位数,结果一般为: A.33 位 B.40 位 C.48 位 D.64 位 123.声音的音高取决于驱动扬声器的电信号的: A.强度 B.谐波 C.频率 124.对于例 3,按照该程序,若两个学生成绩相同,则求出的名次: A.相同 B.不相同 125.对于例 2,若要求查找单词‘SUN’,则例子程序是否同样适用: A.是 B.否 126.DRAM 与 SRAM 比较: A.DRAM 比 SRAM 速度快 B.DRAM 比 SRAM 价格低 C.DRAM 比 SRAM 较容易使用 127.EPROM 的特点是: A.可象 RAM 一样进行读写 B.掉电不丢失信息 C.将只能写一次 128.4164 刷新周期为 2ms,因此,需要多长时间对 4164 作一次刷新操作: A.2ms B.15us C.128us 129.4164 只有 8 根地址线,却能寻址 64k 个单元,原因是: A.分时送入 2 次地址码 B.4164 每单元只有 1 位 C.4164 每次寻址都选中某一个整行 130.用 4164 构成 1M*9 的存储体需要多少片: A.16 片 B.9 片 C.144 片 131.下列哪些芯片允许用户多次编程改写: A.固定掩码 ROM B.PROM C.EPROM 132.EPROM 与 EEPROM 区别是: A.EPROM 价格较低 B.EEPROM 不需要用紫外线擦除 C.EEPROM 编程不需要编 程器 133.线选法采用的方法是: A.保证地址都是线形的 B.直接用地址线作为片选 C.只采用较少的地址线 134.全译码法的方法是: A.所有地址线都参与译码 B.没有剩余高位地址线的方法 C.译码逻辑较简单的方法 135.所谓高位地址线是: A.地址线的高半部分 B.地址线的最高位 C.存储器片内单元译码剩余的高部分地址 线 136.使用 64KB 的芯片扩充到 1M 字节空间,需要进行: A.字扩充 B.位扩充 C.字位同时扩充 137.当 8086 需要用多片芯片扩充 1M 存储单元时,只能选用: A.线选法 B.全译码 138.无条件传递指的是: A.CPU 在不停地传送数据 B.CPU 在传送数据前不查询 I/O 的状态 C.CPU 无条件地服从外设传送数据的要求 139.查询式 I/O 中 CPU 如何得知外设是否准备好? A.从状态端口读入外设状态 B.根据外设处理数据的一般流程 与时间 C.从数据端口的数据分析 140.查询式 I/OCPU 效率较低的原因是:A.CPU 需要多次读入状态信息的操作 B.CPU 需要等待外设准备好 C.外 设接口的速度可能较慢 141.查询式 I/O 外设状态信息通过 CPU 的: A.数据总线读入 B.某条控制线读入 C.数据总线与控制总线输入 142.中断控制的 I/OCPU 效率较高的原因是: A.外设速度可能较快 B.CPU 被动接受外设接口的 I/O 请求 C.CPU 不需要读入状态的操作 143.DMA 方式的 I/O 数据传输是由: A.CPU 控制的 B.由专门的 DMA 控制器控制的 C.由外设控制的 144.DMA 的过程是由: A.CPU 主动引起的 B.外设引起的 C.CPU 与外设都可能引起 145.来自 8086CPU 外部的中断申请怎样送给 CPU,可以通过: A.只通过 INTR 引脚 B.只通过 NMI 引脚 C. 以 上 两个引脚 D.通过执行 INTN 指令 146.中断处理不能中断: A.当前子程序执行 B.当前指令的执行 C.当前中断服务程序执行 147.中断向量表中存放: A.所有中断服务程序的入口地址 B.转向中断服务程序的代码 C.中断类型码 148.8086 转入中断服务程序前,会自动执行如下哪些操作: A.将中断地址入栈B.将标志寄存器入栈 C.将受影响的 寄存器内容入栈 D.将中断允许标志清零E.将中断允许标志置位 F.取中断服务程序的入口地址 G.清除掉中断源的中 断申请信号 H.恢复 CS:IP 中的断点地址 149.NMI 中断在计算机系统中一定不能屏蔽: A.对 B.错 150.INTR 引脚只一个,因此系统只能有一个可屏蔽中断源: A.对 B.错 151.CPU 在什么时候得到 INTR 中断源的类型码: A.在中断服务程序中 B.在中断申请时 C.在中断响应的第 二个/INTA 周期 152.单片 8259 能管理几种外部中断: A.8 B.16 C.256 153.中断屏蔽寄存器的作用是: A.禁止外设向 8259 提出中断请求 B.禁止 8259 相应的某级中断申请传向 CPU C.禁止 CPU 响应 8259 提出的中断申请 D.禁止优先级较高的中断申请 154.8259 管理多个中断源的中断类型码: A.是相同的一个单字节数 B.是连续的几个单字节数 C.是毫无关系的 几个单字节数 155.在完全嵌套方式下,8259 规定哪级中断优先权最高,哪级最低: A.IR0IR7 B.IR7IR0 C.其他 156.之所以需要 EOI 操作,是因为: A.CPU 需要结束中断服务 B.8259 需要将某级中断正在响应的有关标志复位 C.8259 需要实现完全嵌套优先权 157.哪种方式可能引起错误的重复申请中断: A.电平触发 B.边沿触发 C.两者都可能 D.两者都不可能 158.在任何情况下,8259 都会忽略比当前正在响应的中断优先级较低的中断源的中断申请:A.是 B.否 159.ICW1-ICW4 是否可以以任何次序写入:A.可以 B.不可以 C.不一定 160.8259 有几个端口地址? A.1 个 B.2 个 C.2 个以上 161.下列哪些写入较低的口地址: A.ICW1 B.ICW2 C.ICW3 D.ICW4 E.OCW1 F.OCW2 G.OCW3 162.2 片 8259 最多可连接多少个外部中断源: A.16 B.64 C.256 163.级联时,中断类型码怎样发给 CPU: A.通过主片 B.通过从片 164.级联时,CAS0-CAS2 功能是: A.从片给主片送上申请中断的引脚号 B.主片给从片送上被响应 的从片编号 C.主片给从片送上响应的中断类型码 选择题答案:1. CBCCB 6.CCBCB 11.CABBB 16.BCBCA 21. CBCBC 26.BBAB33.BAB 36.BBCCB 41.BBAAB 46.BDBBA 51.CBBBB 56.BABAA 61.BBAAA 66.BBCCC 71.BCCBA 76.CCBCC 81.BABCC 86.CBBBB 91.BBBBA 96. BBABC 101.CBDBB 106.BBBBB 111.AACBB 116.BDBCA 121.CCCAB 126.BBBAC 131.CBBAC. 136.ABBAB 141.ABBBC 146.BA(ABDF)BB 151.CABBA 156.BABBB 161.(AFG)BBB 二、填空题 1. 位一般指(二进制中的一个数据位)。 2. 2.字节(Byte):指(8 个二进制位组成的数据),例如: 及
等。 3.字(Word):指(计算机进行数据处理,包括运算,传输等,所使用的基本信息单位,由若干个二进制位组成) 。 4.字长 Word Length): 指(一个字所包含的二进制数据位数) 。 5.电子计算机系统包括(硬件)和(软件)两大部分。 6.硬件由(主机(包括μ P、 RAM、ROM 和 I/O 接口电路等))及一些(外围设备)(电源)组成 、 7.软件,从广义角度来说包括等(各种程序设计语言) (系统软件) (应用软件) (数据库) 。 8.程序设计语言是指用来编写程序的语言。 包括该语言的语法规定及编程工具(又称编程环境),通常分为 (机器语言) (汇 编语言) (高级语言)三类。 9.系统软件包括(监控程序、操作系统、诊断程序及一些工具软件)等。 10 总线(BUS)是(传输信号的一组公共信号通道 )。 11 片内总线: 又称(芯片内部总线) 。 12 内总线, 又称微计算机总线或板级总线,一般又称(微机系统总线) 。 13 外总线,又称(通信总线) 。 14 所谓地址,是(计算机系统中给存储器(或 I/O 端口)的每一个存储单元分配的一个编号) 。 15(控制总线)上传输的是各种控制信号及状态信号。 16 采用三总线的结构,即(数据总线(DB)、地址总线(AB)、控制总线(CB)) 。 17. 指令系统就是(一种微处理器所能执行的全部指令的集合). 18 指令包括(操作码(OpCode)) (操作数(OperAnd)或操作数地址)两部分。 19 微计 算机的特点(体积小、功耗低;价格便宜;结构简单、性能可靠;灵活性好) 。 20 指令数是(指一种微处理器能执行的指令的个数) 。 21 指令 执行时间由(时钟周期)及所用(时钟周期数)决定。 22 衡量基本的指令执行时间,经常使用一个单位,即(MIPS) 。 23. 访存空间是(指由该微处理器构成的系统所能访问(ACCess)的存储单元数) 。 24 8086CPU 的内部由两个独立的工作部件构成,即 (执行部件 EU(ExeCution Unit)) (总线接口部件 BIU(Bus InterfACe Unit)) 。 25 十六位的状态标志寄存器(FlAg),用来反映(CPU 运算后的状态特征或存放控制标志) 。 26. 通用寄存器包括(8)个(十六)位寄存器。 27(AX) (BX) (CX) (DX)为数据寄存器,它们可以寄存十六位数据,也可分成高低两半,分别寄存 8 位数据。 28 (SP( StACk Pointer)) (BP( BAsiC Pointer))为指针寄存器。 29. 8086 中的&实际地址&是(20)二进制位。 30.8086 产生 20 位的地址,称为(实际地址或物理地址) 。 31 8086 的通用寄存器分为(数据寄存器和指针寄存器) (变址寄存器)两组。 32. 通用寄存器有(AX、BX、CX、DX、SP、BP、SI、DI) 。 33.AX 作为(16 位累加器)使用, AL 则是 8 位累加器。 34.BX 作(基址(BAse)寄存器),在查表指令 XLAT 中存放表的起始地址。 35.CX 作(计数(Count)寄存器),常用于循环程序中的循环计数。 36.DX 作(数据(DAtA)寄存器),如在字的除法运算指令 DIV 中,存放余数。 37. SP 称为(堆栈指针寄存器) 。 38. BP 称作(基址指针寄存器) 。 39. SI 称为(源变址寄存器) 。 40.目的操作数地址的偏置放于 DI 中,所以 DI 称为(目的变址寄存器) 。 41.DIP 封装,指的是(集成电路的一种外封装形式,即&双列直插&式封装) 。 42 由片外输入 CLK 引脚的时钟脉冲信号,是系统定时的基本脉冲,其频率称为(主频),其周期称为(时钟周期) 。 43.8086 的主频为 5MHz,l 个时钟周期就是(20ns),8086 的主额为 10MHz,则 1 个时钟周期就是(10ns) 。 44. 8086 系统中,就有三种时间周期,分别是(时钟周期) (总线周期) (指令周期) 。 45.所谓时序,就是(指 CPU 执行各种操作时,引脚信号随时钟而变化的顺序和时间长短的安排) 。 46 总线操作按数据传输方向可分为(总线读操作) (总线写操作) 。 47. 存储器按(字节) 组织,按(字节)分配地址。 48 实际地址(又称物理地址)是(指 CPU 和存储器进行数据交换时在地址总线上出现的地址码) 。 49 逻辑地址由两部分组成(段地址) (偏移量) 。 50. 堆栈就是(在内存中开辟的一段特殊的存储区域,这段区域采用&先进后出&的原则存取数据) 。 51. 堆栈段在存储区中的位置由(堆栈段寄存器 SS) (堆栈指针 SP)来规定。 52. 堆栈最典型的用法就是(在调用子程序时保存返回地址) 。 53.(断点地址)是指主程序中调用指令(CALL 指令)的下一条指令的地址。 54.8086 的堆栈操作有(入栈(PUSH)) (出栈(POP))两种。 55. 每种指令又由(2)个字段(Field)构成。 56.(CPU 所具有的一整套执行各种类型的操作命令的集)称为该 uP 的指令系统(Instruction Set)。 57.(所有能寻得操作数来源的方式)称为寻址方式。 58. 8086 采用独立编址的 I/O 端口时,可有(64K)个字节端口或(32K)个字端口。 59. OUT 指令和 IN 指令一样,都提供了(字节)和(字)两种使用方式。 60. 通常,计算机一条指令的执行时间是指(取指令)和(执行指令)所花时间的总和。 61. 8086 指令系统包含(133)条基本指令。 62. 按指令长度可以分为(长格式) (短格式) 。 63. TABLE-NAME 是表的名称,也即(表的首地址) 。 64. 算术运算指令涉及的操作数从数据形式来讲有两种。 位的和 16 位的操作数) (8 65.操作数从类型来讲也分两类(无符号数) (带符号数) 。 66. 8 位无符号数表示的范围为(0~255(或 0~FFH)) 。 67.16 位无符号数表示的范围为(0~6 5 5 3 6(或 0~FFFFH)) 。 68. 微计算机中的带符号数通常用(补码)表示。 69. 8 位带符号数表示的范围为(-128~+127(或 80H~7FH)) 。 70. 16 位带符号数表示的范围为(一 32768~+32767(或 8000H~7FFFH)) 。 71. 减法指令共有(7)条,其中(5)条为基本减法指令,(2)条为十进制减法调整指令。 72. 逻辑运算与移位指令,由(布尔型指令、移位指令和循环移位指令)三小类组成,共(13)条。 73. 8086 的布尔型逻辑运算指令包括(AND(与),OR(或),XOR(异或),NOT(非)和 TEST(测试))5 条指令。 74. 8086 的控制转移类指令可分为四小类(即无条件转移与调用返回、条件转移、循环控制和中断类指令) 。 75. 段内和段间的转移指令寻址方法又有两种,即(直接寻址和间接寻址) 。 76.(某些具有独立功能的程序编写成独立的程序模块)称之为子程序。 77. (CALL)指令就是为调用程序调用过程(或称转子程序)而设立的。 78. (RET)指令放在子程序的末尾,当子程序功能完成后,由它实现返回。 79. L00P 指令执行循环,用(9)个时钟周期,退出时用(5)个时钟周期。 80. 在 8086 的中断机构中,包含两类中断源(一类是外部中断源,另一类是内部中断) 。 81. 当微计算机系统在运行时,或者程序运行期间,遇到某些特殊情况,需要 CPU 停止执行当前的程序,产生 (断点)82. 转 。 去执行一组专门的例行程序进行处理,这种情况称为中断。这种例行程序称为(中断服务程序) 。 83. 在中断服务程序的末尾需要设置一条返回指令,叫做(中断返回指令(Interrupt RETurn)) 。 84. 子程序接服务功能可分为三个方面(磁盘的读写管理) (内存管理) (基本 1/0 管理) 。 85. 调用这些子程序时,应给出以下三方面的内容(入口参数) (子程序的功能号送入 AH 寄存器) (INT 21H) 86. 所谓&实时性&,指的是(系统按照实际的时间刻度运行,并及时按实际出现的情况处理有关问题的能力) 。 87. 汇编程序主要分为两种(宏汇编程序) (小汇编程序) 。 88. 8086 宏汇编有三种基本语句。它们是:( 指令语句、伪指令语句和宏指令语句)。 89. 标号和变量都具有三种属性:(段、偏移及类型)。 90. 偏移属性表示(标号或变量相距段起始地址的字节数) 。 91. 关系运算符有(EQ(相等)、 NE(不相等)、 LT(小于 )‘ GT(大于)、 LE(小于或等于)、 GE(大于或等于))共六 种。 92.结构化程序设计三种类型(顺序结构,条件结构,循环结构) 。 93(因而常常将这些常用的程序标准化,做成预制好的模块)就是子程序(SUBROUTINE)。 94. 调用子程序的程序称为(主程序或调用程序) 。 95. 一个主程序可多次调用一个子程序,也可调用多个子程序:一个子程序可被多个程序调用,子程序也可再调用其它于 程序,这称为(子程序嵌套) 。 96. 只要堆栈空间允许,嵌套层次不受限制;子程序也可调用本身,这称为(递归调用) 。 97. 子程序中允许改变的数据叫做参数(或变量),调用子程序时,经常需要传送一些参数给子程序,子程序运行完后,也经 常要返回参数给调用程序,前者叫(入口参数),后者叫(出口参数) 。 98. 调用程序和子程序之间的信息传送称为(参数传递) 。 99. 用(地址表)传送数据的参数:不直接传递参数本身,而是传送参数存放的地址。 100.在子程序嵌套的情况下,如果一个子程序调用的子程序就是它本身,称这种调用为 (递归调用) ,这样的子程序称为 (递 归子程序) 101. 计算机的存储器系统可分为(内存储器(又称主存储器)) (外存储器) 。 102. 磁盘分(硬盘和软盘)两种。 103.程序控制方式分为(无条件传送方式)( 条件传送方式)两类。 三、判断题 1. 基本指令执行时间愈短,表示微处理器工作速度愈高。 2. 指令执行时间,基本上能反映微处理器速度指标。 3. 基本指令执行时间愈短,表示微处理器工作速度愈高。 4. 访存空间越大,表明该微处理器能扩充的内存单元数越少,系统的性能就越有提高的余地。 5. 若微处理器具有协处理器接口,则可用来构成多处理系统。 6. SP 为堆栈指针,用于堆栈操作时,确定堆栈在内存中的位置,由它给出栈顶的偏移量。 7. 堆栈操作遵循先进后出的原则。 8. AX 寄存器只能存16位数字。 9. 两个 16 位有符号数相乘一定是 32 位。 10. 两个 16 位有符号数相加定是 32 位。 11. 两个 16 位有符号数相减是 32 位。 12. 两个 16 位有符号数相除定是 32 位。 13. 加法运算和乘法运算是等效的。 14. 同样的结果,如果用乘法要快一些。 15. 有符号数和无符号数不能进行运算。 16. 进位或者借位的记载是在标志寄存器中。 17. 汇编语言比其它语言复杂。 18. 汇编语言比其它语言运行起来慢。 19. 其它语言最终都要转换成汇编语言运行。 20. 机器最终运行的是伪代码语言。 21. 伪代码只有转换成机器码才能被机器识别,执行。 22. 变址寄存器 SI 和 DI 是用来存放当前数据段的偏移地址的。 23. AX 只能放地址。 24. CX 只能当计数器使用。 25. DX只可以存放数据。 26. SP 只能当堆栈指针。 27. BP 只能当基址指针。 28. BX只能存放基址。 29. 一个字长度等两个字节。 30. 双字是 32 个位的。 31. 总线周期是不确定的。 32. 一个总线周期有 4 个状态组成。 33. 等待状态可能长一点。 34. 最大方式与最小方式区别不大。 35. 一般的微机都处于最大方式工作。对 36. 当存放的数为一个字(16 位,2 个字节)时,则将字的高位字节放在高地址中,将低位字节存放在低地址中。 37. 当存放的数是双字形式(即 4 个字节)时,则将低字存放在较低地址中,高字存放在较高地址中。 38. 对存放的字,其低位字节可以在奇数地址中(即从奇数地址开始存放),也可以在偶数地址中(即从偶数地址开始存 放)。 39. 若一个字是规则存放,则对它的存取可在一个总线周期完成,而非规则字的存取则需二个总线周期。 40. 基址和偏移地址都用无符号的 16 位二进制数或 4 位十六进制数表示。 41. 减短了指令长度,提高了执行程序的速度。 42. 分段组织存储器也为程序的浮动装配创造了条件。 43. 固定寻址比立即数寻址快。 44. 直接寻址比间接寻址快。 45. 立即数寻址最快。 46. 固定寻址的指令,不需要计算 EA,执行速度快。 47. 立即数可以是 8 位,也可以是 16 位。 48. 采用寄存器寻址方式的指令在执行时,操作就在 CPU 内部进行,不需要执行总线周期,因此,执行速度快。 49. 指令操作符使用大小写都是可以的。 50. MOV 操作源数据丢失了。 51. 存储单元可以使用直接寻址、寄存器间接寻址、寄存器相对寻址、基址加变址寻址、相对基址加变址寻址这些存 储单元寻址方式中的任何一种。 52. 指令的两个寄存器必须是位数相等。 53.MOV ES, AL。 54.MOV CL,4231H。 55. MOV 指令中的两个操作数的类型必须一致。要么都是 8 位数据,要么都是 16 位数据。 56. MOV 指令中不能用 CS 和 IP 作目的操作数,是说这两个寄存器的内容不能随意改变。 57. 不允许在段寄存器之间直接传送数据。 58 允许用立即数作目的操作数。 59. 不能向段寄存器送立即数。 60. 当要对段寄存器初始化赋值时,也要通过 CPU 的通用寄存器。 61. 8086 的堆栈是向上生长的(向地址低的方向生长)。 62. 堆栈操作指令中,有一个操作数是隐含了的,这个操作数就是(SP)指示的栈顶存储单元。 63. 8086 堆栈操作都是字操作,允许对字节操作。 64. CS 寄存器可入栈,能随意弹出一个数据到 CS。 65. 要成队使用 PUSH 与 POP 指令,即 PUSH、POP 指令的个数应一致。 66.使用 PUSH 与 POP 指令的顺序,必须相反。 67. 换码指令使用的是隐含寻址方式,表的首地址必须放在 BX 中,而待查码必须放在 AL 中。 68. 使用 LDS 和 LES 指令时应注意,寄存器 r 不能使用段寄存器。 69. 使用 LDS 和 LES 指令时应注意 src 一定是存储器操作数,其寻址方式可以是 64 种当中的一种。 70LEA 是对操作数的地址进行操作。 71.LDS 和 LES 是对操作数的内容进行操作。 72. LDS 和 LES 操作数的内容是 16 位的地址指针。 73. SAHF 指令和 LAHF 指令的操作正好相反。 74. LAHF 和 SAHF 两条指令只对低 8 位的标志寄存器操作,这样就保持了 8086 指令系统对 8 位
指令系统的 兼容性。 75.PUSHF 和 POPF 一般是成对使用的。 76. 除 SAHF 和 POPF 指令执行后将由装入标志寄存器的值来确定标志外,其它的各条指令执行后都不会改变标志寄存 器的内容。 77.双操作数指令的两个操作数中除源操作数可为立即数的情况外,必须有一个操作数在寄存器中,单操作数指令不允许 使用立即数方式。 78. 带符号数的最高位作符号位:&0&表示&+&号,&1&表示&一&号。 79. 对 CPU 来说,是没有什么有符号数和无符号数的,这都是由人来确定的。 80.无符号数对加法和减法可以采用同一套指令。 81.无符号数对乘法和除法则能采用同一套指令。 82. 对无符号数发生溢出只出现在两数相加的情况。 83. 在 8086 CPU 中则是使用溢出标志 OF:当 OF=1,无溢出,OF=0,溢出。 84. INC 指令只影响 OF,SF,ZF 和 PF,而不影响 CF。 85.当用 INC 指令进行循环计数,试图以判断 CF=1 结束循环,是达不到目的的,而且还会导致程序运行进入死循环。 86. DAA 指令用于对组合 BCD 码相加的结果进行调整,使结果仍为组合的 BCD 码。 87. 所谓调整,就在于 BCD 码是以二进制的记数方式来表示十进制,所以要将两者的差额补上。 88. WORD PTR[DI]表示取(DI)和(DI)+1 所指的字单元的内容。 89. DEC 指令和 INC 指令一样,执行后对 CF 不产生影响。 90. 立即数是能作为减法指令的目的操作数的。 91. NEG 指令适用于对负数求绝对值和对正数求其相反数。 92. NEG 指令执行后,对 OF, SF,ZF,AF,PF 和 CF 均产生影响。 93. 当操作数的值为-128(即 80H)或为-32768(即 8000H)的情况下,执行 NEG 指令后,结果无变化,即送回的值仍为 80H 或 8000H。这是因为-128 即 ,-32768 即 00 0000,对之取反加 1 ,其结果认为其本身。 94. CMP 指令和 SUB 指令类似,也是执行两操作数相减,但和 SUB 指令不同的是,不送回相减结果,只是使结果影响标志位 OF,SF,ZF,PF 和 CF。 ()对 95. 判断两个带符号数的大小,应由符号标志 SF 和溢出标志 OF 综合进行判断。 96. 无符号数和带符号数进行比较,其状态标志反映的两数大小关系。 97.对无符号数,是大小的区别。 98. 对有符号数,是高低的区别。 99. 进行乘法时,如果两个 8 位数相乘,乘积将是一个 16 位的数;如果两个 16 位数相乘,则乘积将是一个 32 位的数。 100. 乘法指令也是使用隐含寻址的,被乘数是固定放在 AL 或 AX 中的,运算的结果也是固定存放的。 101. 乘法指令中有两个操作数,但其中一个是隐含固定在 AL 或 AX 中,若是字节数相乘,被乘数总是先放入 AL 中,所得 乘积在 AX 中;若是字相乘,被乘数总是先放入 AX 中,乘积在 DX 和 AX 两个 16 位的寄存器中,且 DX 中为乘积的高 16 位,AX 中为乘积的低 16 位。 102. 8086 执行除法运算时,规定被除数必为除数的双倍字长,即除数为 8 位时,被除数应为 16 位,而除数为 16 位时,被除数 为 32 位。 103. 除法运算后,标志位 AF、ZP、OF、SF、PF 和 CF 都是确定的(有意义)。 104. 用 IDIV 指令时,若为双字/字,则商的范围为:-32768~+32767;若为字/字节,则商的范围为一 128~+127。 105. 如果商的范围超出为一 128~+127,8086CPU 则将其作为除数为 0 的情况处理,通常办法用溢出标志 OF=1 表示。 106. 对带符号数进行除法运算时,比如(-30)/(+7)可以得商为一 4,余数为一 2,也可得商为一 5,余数为十 5。这两种结 果都正确。 107. 除法运算时,要求用 16 位数除以 8 位数,或用 32 位数除以 16 位数。 108. 当被除数只有 16 位,而除数也为 16 位时,必须将此 16 位被除数放在 AX 中,并用符号位对高 16 位 DX 进行扩展,若 不进行扩展,除法将发生错误。 109. 遇到两个带符号的字节数相除时,可以不先执行 CBW 指令,产生双倍长度的被除数。 110. CWD 指令和 CBW 一样,用于带符号数扩展。 111. CWD 执行后,影响标志位。 112. NOT 不影响标志位。 113. 用 AND 指令可对指定位或指定的一些位进行屏蔽(清零)。 114. 用 OR 指令不可对一些指定位置 1。 115. XOR 指令可以比较两个操作数是否相同。 116. 用 XOR 指令与全 1 的立即数进行异或,还可将指定的数据变反。 117. AND AX,AX;OR AX,AX;XOR AX,AX 都可以用来清除 CF,影响 SF,ZF 和 PF。 118. XOR AX,AX 在清 CF 和影响 SF,ZF,PF 的同时,不清除 AX 自己。 119. AND AX,AX 对操作数无影响,可用来检查数据的符号,奇偶性或判断数据是否为零。 120. OR AX,AX 对操作数无影响,可用来检查数据的符号,奇偶性或判断数据是否为零。 121. TEST 指令和 AND 指令执行同样的操作,操作结果也一样。 122. NOT 指令只有一个操作数,因此操作数能为立即数。 123. SHL 和 SAL 的功能完全一样。 124. 带符号数移位时对符号位的操作和右移时最低位移入 CF 中。 125. SHR 和 SAR 的功能相同。 126. 循环移位指令可用来检测寄存器或存储单元中含 1 或含 0 的个数。 127. REP 前缀常与 MOVS 和 STOS 串操作指令配用,表示字符串未处理完时重复。 128. 串操作指令是一类高低效率的操作指令,合理选用对程序的优化没有好处。 129. LODSB/LODSW 该指令用来把 DS 段中由 SI 所指的存储单元的内容取到 AL(或 AX)中。 130. CMPSB/CMPSW,送回结果。 131. 除中断类指令外,其它类指令均影响标志位。 132. 控制转移类指令的功能是改变程序执行顺序。 133. 控制转移指令中关于转移地址的寻址与前面讲述的与数据有关的寻址相同。 134. 段内直接寻址方式既可用在无条件转移指令中,也可用在条件转移指令中。 135. 段内直接寻址又称为相对寻址。 136. 在条件转移指令中,只能用 16 位的位移量。 137. 段内返回和段间返回均用 RET 指令,其操作的区别由与之配用的 CALL 指令中的过程名确定。 138. RET 指令还可带立即数 n。 139. 条件转移指令均为双字节指令。 140. 高于和低于指的是两个符号数之间的关系,大于和小于指的是两个无符号数之间的关系。 141. (CX)=0 时,不会影响标志 ZF,换句话说,ZF 是否为 1,是由前面其它指令的执行所影响的。 142. ZF 标志不受(CX)减 1 的影响,而是由前面其它指令的执行所影响。 143. NOP 空操作指令。 144. HLT 等待指令。 145. WAIT 暂停指令。 146. TF 的值是由调试程序修改的,而不是由被调试的程序修改的。 147. 如果遇到被调试程序中有带重复前缀的串操作指命,则在单步操作状态下,将在每次重复操作之后,产生一个单步中 断,而不是在整个串操作指令结束以后才进入单步中断。 148. 8086 的系统对无符号数和带符号数进行乘法或除法运算时,是采用一套指令的。 149. 若实际输入的字符数少于定义的字符数,缓冲区将多余的空间填零; 若输入字符数多于定义的,则多余输入的字符被 丢掉,且响铃。 150. 将 INT 2OH 安排在程序的任一地方都可实现这一功能。 151. 将 INT 2OH 放在.COM 文件的任意地方,实现退出程序。 152. DOS 系统功能调用的 0OH 号调用和 INT 2OH 功能完全相同。 153. 汇编语言程序执行前不需要经翻译后产生机器代码。 154. 但伪指令语句的标号后面不能有冒号,这是它和指令语句的一大差别。 155. 开发一个软件,仅需要编好程序代码即可。 156. 任何程序都包含三种基本结构。 157. 在汇编语言中, 所谓条件, 就是标志寄存器中各标志位的状态。 158. 循环的本质是&重复&,所以编好循环程序的第一步是从问题中分离出&重复&处理的操作,再围绕这部分,分别考虑循 环初始部分及循环控制部分的编写。 159. I/O接口没有必要编程序实现。 160. 中断越少越好。 161. ROM是可读不可写的存储器。 判断题答案:1. 对对对错对 6.对对错错错 11.错错对错对 16. 对错错对错 21.对对错错错 26.对对错对对 31.对对错错 对 36. 对对对对对 41.对对对对错 46.对对对对错 51.对对错错对 56.对对错对对 61.对对错错对 66.对对对对对 71. 对错对对对 76.对对对对对 81.错对错对对 86.对对对对错 91.对对对对对 96.对错错对对 101.对对错对错 106.对对对 错对 111.错对对错对 116.对对错对对 121.错错对对错 126.对对错对错 131.错对错对对 136.错对对对错 141.对对对 错错 146.对对错对错 151.对对错对错 156.对对对错错对 四、简答题 1.请解释计算机的基本结构 (硬件: 从图中可以看出,微计算机硬件由主机(包括μ P、 RAM、ROM 和 I/O 接口电 路等)及一些外围设备、电源组成。 软件:微计算机的软件,从广义角度来说包括各种程序设计语言、系统软件、应用 软件和数据库等。) 2.什么是微处理器? (缩微的cpu大规模集成电路lsi称为微处理器。) 3.什么是微计算机?(以微处理器为核心,配上大规模集成电路的随机存储器RAM,ROM,I/O 及相应的辅助电路而 构成的微型化的计算机装置。) 4. 简述微处理器的发展概况(第一代( 年): 四位和低档八位微处理器和微计算机。 代表产品是 Intel 的 4004(集 成度为 1200 个晶体管/片)和由它组成的 MCS-4 的微计算机,以及随后该公司的改进产品 8008(集成度是 2000 个晶体 管/片)和由它组成的 MCS-8 微计算机。 第二代( 年): 八位的微处理器和微计算机。 代表产品是 Intel 公司的 8080,MotorolA 公司的 MC6800 和 MOS TeChnology 公司的 6502,Zilog 公司的 Z80。 第三代( 年):十六位微处理器和微计算机。代表产品是 Intel8086(集成度为 29000 个晶体管/片),Zilog 的 Z-8000(集成度为 17500 个晶体管/片)和 MC68000(集成度为用 68000 个晶体管/片)。 第四代(1981 年以后):三十二位的微处理器和微计算机。这代产品属超大规模集成电路,代表产品是 Intel 公司的 80X86(包括 Pentium 系列)、 公司的 32 位微处理器和 MotorolA 公司的 68020,集成度达到 15 万~45 万个晶体管/片。 HP ) 5.什么是总线?(总线(BUS)是传输信号的一组公共信号通道。) 6.微计算机系统采用总线结构有何优点?(采用总线结构后,计算机的主要功能部件就都&挂在&总线上,系统的各种信息 都通过总线传输。相对于一些各部件&随机&连线的电子产品,这种方式有很突出的优点: 结构简化:统一的总线连接,使系统的结构清晰、简化。 设计简化: 在确定了总线的标准后,各功能部件都可以以此标准为依据,分别进行设计。 同时,凡符合此标准的部件也都可 以直接连接起来。这种设计方式叫&面向总线的设计方法&,它大大减小了设计的工作量。 扩充容易: 采用总线结构的计算机,如果需要在系统中扩充新的功能部件,相对较为容易,一般只需要将符合该总线标准的 部件直接接入即可(当然需考虑驱动能力的问题)。对此,我们在给 PC 机安装新的板卡时应有体会。) 7.什么是助记符指令和机器指令?(每种 CPU 指令系统的指令都有几十条、上百条之多。为了帮助记忆,用助记符来代 表操作码。 通常助记符用相应于指令功能的英文缩写词来表示。 Z 8 0 微处理器中,数的传送(LoAd)用 LD,加法用 ADD, 如 输出用 OUT,暂停用 HALT。) 8.计算机中字符有哪几种编码?( 原码、补码和反码) 9.简述运算溢出与进位的区别?( 用补码表示的数,在进行加减运算时,可能发生溢出;而无符号数加减只会产生进位或 借位。 溢出与进位(借位)是完全不同的。运算溢出后,所得结果是完全错误的,应该丢弃。而发生进位或借位后,运算结 果的低位是正确的,不能丢弃。 发生溢出的本质原因是,运算结果超出了同样位数的补码表示的范围。) 10.8086 内部 IP 寄存器的作用是什么?( 其功能和模型八位微处理器中的程序计数器 PC 功能相似。 用于保存 EU 要执行 下一条指令的偏移地址。) 11. 试说明引脚三态输出的含义。(三态&,这表示该信号除了可以输出高电平及低电平以外,还具有高阻态输出。此类信 号具有与外界隔离的功能。) 12. 什么叫总线周期?( 指的是 8086CPU 通过总线,执行一次访问存储器或访问 I/O 端口的操作或操作的时间。) 13. 8086 基本的总线周期包含几个 T 状态? (基本总线周期用 T1,T2,T3,T4 表示。) 14. 什么叫等待周期?( CPU 将在 T3 之后插入 1 个或多个附加的时钟周期 Tw,Tw 又叫等待状态或等待周期。) 15. 什么是最小工作方式?(最小方式,就是系统中只有 8086 单一个微处理器,在这种系统中,所有的总线控制信号都直 接由 8086 产生,系统中总线控制逻辑电路被减到最少。) 16. 怎样使 8086 处于最小工作方式?( 当把 8086 的 33 脚 MN/MX 接向+5V 时,8086 就处于最小工作方式了。) 17 什么是最大工作方式?(最大方式是相对最小方式而言的。在这种方式下,系统中,大部分的总线控制信号都不是直 接由 8086 产生,而是由系统中另外接入的总线控制逻辑产生的。) 18. 怎样使 8086 处于最大工作方式?( 当把 8086 的 33 脚 MN 接向地时,这时的系统处于最大方式。) 19. 8086 的主要操作时序有那些?(系统的复位和启动操作 ,总线操作,暂停操作,中断操作,总线保持或总线请求/允许操 作) 20. 8086 插入 TW 周期有何意义? (延长 CPU 读写内存(或 I/O 口)的时间,以便速度较慢的内存(或 I/O 口)芯片能在规定 的总线周期的时间内,完成数据的存取,以实现与 CPU 的正确接口。) 21.区别以下几个概念的意义:指令、指令系统、机器指令、助记符指令。(指令系统是计算机硬件和软件之间的桥梁, 是汇编语言程序设计的基础。CPU 所具有的一整套执行各种类型的操作命令的集会称为该 uP 的指令系统(Instruction Set)。一条指令是完成一种操作的命令,uP 能直接识别和执行的指令是用二进制代码表示的,这种代码称为机器代码。给 每种机器代码赋予一个能助记的符号,得到助记符指令。不同的 uP 赋予的助记符不同,而且各自的指令系统中包含的操 作类型也有些不同,就构成忙各自的指令系统.) 22. 指令按功能的不同,可分为哪些类? (1.数据传送类 2.算术运算类 3.逻辑运算与移位类 4.串操作类 5.控制转 移类 6.处理器控制类) 23. 使用 I/O 指令时应注意。((1)这类指令只能用累加器作 I/O 过程机构,不能用于其它寄存器; (2)长格式的 I/O 指令,端口范围为 0~FFH,这在一些规模较小的的
微机(如单板机)就够用了。而在一些功能较 强的微机系统,比如 IBM PC/XT,AT 机中,既用了 0~FFH 范围的端口,也用了大于 FFH 的端口。前者分配给主板的接口使 用,后者则分配给槽口上扩展的端口使用。运行有 I/O 指令的程序时,若无硬件端口的支持,机器将出现死锁。IBM PC/XT 机 I/O 端口地址分配见第七章§7.3。 (3)在使用短格式 I/O 指令时,应先将端口地址赋给 DX 寄存器,而且只能赋给 DX.) 24. 怎样使用非组合十进制乘法调整指令对 BCD 乘法运算结果进行调整?(对十进制数进行乘法运算,要求乘数和被乘 数都是非组合的 BCD 码。AAM 指令用于对 8 位的非组合 BCD 码的乘积 AX 内容进行调整。调整后的结果仍为一个正 确的非组合 BCD 码,放回 AX 中。AAM 紧跟在乘法指令之后,因为 BCD 码总是当作无符号数看待,所以对非组合 BCD 相乘是用 MUL 指令,而不是用 IMUL 指令。) 25. 串操作指令的特点。 ((1)可以对字节串进行操作,也可以对字串进行操作。 (2)所有串操作指令都用 SI 对 DS 段中 的源操作数进行间接寻址,而用 DI 对 ES 段中的目的操作数进行间接寻址。串操作指令是唯一的一类源操作数和目的操 作数都在存储单元的指令。 (3)串操作指令执行时,地址指针的修改与方向标志 DF 有关。当 DF=1,SI 和 DI 作自动减量 修改;当 DF=0,SI 和 DI 作自动增量修改。因此,在串操作指令执行前,需对 SI,DI 和 DF 进行设置,且把串的长度设置在 CX 中。 (4)通过在串操作指令前加前缀,可使串操作重复进行到结束,其执行过程相当于一个循环程序的运行。在每次 重复之后,地址指针 SI 和 DI 都被修改,但指令指针 IP 仍保持指向前缀的地址。因此,如果在执行串操作指令的过程中,有 一个外部中断进入,那么,在完成中断处理以后,将返回去继续执行串操作指令。) 26. 机器语言、汇编语言、高级语言。(机器语言的指令(&语句&),是用 0、1 二进制代码表示的。这种语言难以记忆和理 解,但它是机器唯一能直接理解和直接执行的语言。 汇编语言采用助记符表示 0、1 二进制代码,还使用符号地址及其他一些语法规定。这样,汇编语言的指令与机器语言 的指令基本上一一对应,基本上属于同一层次的语言,但可理解性大大加强,也较容易记忆。 但汇编语言指令的功能受处理 器的限制,一般不太强。 高级语言是一种面向算法的语言,其语句类似人类的自然语言,因而易学易用,可移植性好。 但高级语言的语句与机器可 执行的机器指令之间并无直接的对应关系,因此,高级语言程序执行前需要&翻译&成机器指令。这种关系带来了程序效率 (时间、空间)的损失。) 27. 模块程序设计的优点。((l)单个程序模块易于编写,调试和修改; (2)便于分工,可由多个程序员编写、调试,有利于加快工作速度; (3)程序易读性好; (4)程序的修改可局部化进行; (5)频繁使用的功能可以编制成模块存在库里供多个任务使用。) 五、程序题 1.以下哪些指令是非法指令? A. MOVAL,[SI] B. MOVDH,DS C. MOV[1000H],[BX] D. MOVDS,ES E. MOVESP,DX F. MOV2000H,AX G. MOVAH,1000H H. MOVAX,[CX] I. MOVCH,20 J .PUSHDS K. POP AH L. PUSH100 M.XCHGAH,BX N.XCHG[200H],[BX] 答案:bcdefgkmn 2. 实现 08×09=0702 的程序段。 答案:MOVAL,08 MOVBL,09 MULBL;(AL)×(BL)-&(AX) AAM;结果:(AX)=0702 3 要实现
余 01 程序段。 答案:MOVAX,0103 ;取被除数 MOVBL,06 ;取除数 AAD ;调整为(AX)=000DH DIVBL ;相除,得商(AL)=02 余数(AH)=01 4.编写 45ABH÷2132H 的程序段。设被除数、除数分别按低字节在前,高字节在后存放在数据段中,并在其后保留 4 个字 节以存放商和余数。 答案及解析: MOVBX,OFFSETBUFFER MOVAX,[BX] CWD;被除数先进行符号扩展;(对带符号数) IDIV2[BX]MOV4[BX],AX MOV6[BX],DX 在计算机存储单元中,一个字是按低字节在前,高字节在后存放的。 在这里 45ABH 和 2132H 存放在 BUFFER 所指的地址 单元中,所以我们先取得 BUFFER 的地址,再将 45ABH 放入 AX 中,然后对它进行调整,再与 2132H 相除。 2[BX]在这里是 一种寻址方式,表示 BX+2 所指地址的内容。 5.算术运算指令的综合应用:试计算(W-(X×Y+Z-220))/X,设 W、X、Y、Z 均为 16 位的带符号数,分别存放在数据段的 W、X、Y、Z 变量单元中。要求将计算结果的商存入 AX,余数存入 DX,或者存放到 RESULT 单元开始的数据区中。 答案:DATASEGMENT;数据段 WDWC304 XDW10 YDWC12 ZDW20 RESULTDW2DUP(?) DATAENDS ;…………………………………………. CODESEGMENT;代码段 ASSUMECS:CODE,DS:DATA START:MOVAX,DATA;初始化 DS MOVDS,AX ;…………………………………… MOVAX,X;X×Y IMULY MOVCX,AX;乘积暂存 BX,CX MOVBX,DX MOVAX,Z;将 Z 带符号扩展 CWD ADDCX,AX;与 X×Y 相加 ADCBX,DX SUBCX,220;(X×Y+Z)-220,结果在 BX 和 CX 中 SBBBX,0;保证借位被减掉 MOVAX,W;取 W-&AX,并扩展成双字 CWD SUBAX,CX;实现 W-(X×Y+Z-220) SBBDX,BX;结果在(DX),(AX)中 IDIVX;最后除以 X,结果商在(AX);余数在(DX)中 MOVRESULT,AX MOVRESULT+2,DX;存结果到数据区 ;………………………………… MOVAH,4CH;返回 DOS INT21H CODEENDS ;……………………………………. ENDSTART; 汇编结束 6.用移位指令实现快速乘法,求 Y=10*X=2*X+8*X 答案:SALAL,1;X*2 MOVBL,AL;暂存于 BL SALAL,1;X*4 SALAL,1;X*8 ADDAL,BL 7.下列程序中有两条无条件转移指令,试计算这两条指令的位移量。 已知这两条转移指令转移前和转移后的(IP)分别示于 下面。 13BA:001BF3REPZ 13BA:001CA6CMPSB 13BA:001D7501JNZ0020① 13BA:001FCBSAME:RETF 13BA:002041FOUND:INCCX 13BA:0MOV[0006],CX 13BA:0025EBFSJMP001F② 答案:①JNZ0020 指令的位移量 e 为: e=(IP)目的-((IP)源+2)=002OH 一(001DH+2)=01H 这里的 2 为该指令的 长度(字节数)。位移量为正,属正向转移。 ②JMP001F 指令的位移量 e 为: e=(IP)目的-((IP)源+2)=001FH 一(0025H+2)=-8H 负数取补码。位移量为 F8H,位移量为负。属反向转移。 8.求由任意个字组成的数组之和,其和为双字。 分析及答案:将求和程序 ROUTADD 设计为一个过程,它和主程序 MAIN 在同一程序模块中,因此该过程可直接访问整 个模块的数据区。在这个数据区内,设置主子程序传递参数的缓冲区,在本例中,传递的参数就是待求和的数组本身。 因此,本参数传递的方法,就是设置一个主子程序都能访问的公用区,在此公用区内传递所有的参数,它有点类似高级语言 中的全局变量。 程序中,数组 ARY 可包含任意个字,其长度为$一 ARY(字节),赋给 COUNT,作为子程序循环相加的重复次数。 但要注意: 这里是进行字相加,因此送给 CX 寄存器的计数值应为 COUNT/2,子程序运行结果存入共用数据区的 SUM 和 SUM+1 两个字节单元中。因此调用之后,可从这里取走运算结果。 解: DATASEGMEN ARYDWH,H,OABCH;任意个字 COUNTEQU$-ARY;数组中的字节个数 SUMDW?,?;存放结果 DATAENDS CODESEGMENT ASSUMECS:CODE,DS:DATA MAINPROCFAR START:PUSHDS MOVAX,0 PUSHAX MOVAX,DATA MOVDS,AX CALLFARPTRROUTADD;调用求和子程序 RET;返回 DOS MAINENDP ROUTADDPROCFAR PUSHAX PUSHCX;保护现场 PUSHSI LEASI,ARY;SI 指向 ARY 首址 MOVCX,COUNT/2;设计数值 XORAX,AX;清和 MOVDX,AX CACULS:ADDAX,[SI] JNCCOUPT INCDX;进位 COUPT:ADDSI,2;修改指针 L00PCACULS MOVSUM,AX;存和 MOVSUM+2,DX POPSI POPCX;恢复现场 POPAX ROUTDDENDP CODEENDS ENDSTART 9. 求由任意个字组成的数组之和,其和为双字。 用地址表传送参数。 分析及答案:分析:当数据段中有两个数组 ARY 和 ARY1 要求其累加和时,这种情况下,若采用上例固定缓冲区传送参 数的办法,那就只有在调用 ROUTADD 求了数组 ARY 的和之后,再把数组 ARY1 的变量传到数组 ARY 的单元中,运行完 后,再把结果 SUM 传回到 SUM1 中,显然这不是一个好办法。 怎样才能简单的解决这种参数传递的问题呢?设想,如果我们不直接传递数组本身,而是传递数组的首地址,则求和的子 程序就可以方便地对不同的数组求和了。具体来说,我们在 ROUTADD 子程序中,不去直接访问数组本身,而是通过主程 序传递的数组地址来间接的访问数组。 具体的实现:在这种情况下,常采用地址表方法,也要设置一个缓冲区,在这个缓冲区中保留了 3 个字单元作地址表,存放 待待求和数组的参数,而不是数组本身。为此,应在主程序的调用指令 CALLROUTADD 之前增加以下几条指令: MOVTABLE,OFFSETARYMOVTABLE+2,OFFSETCOUN5MOVTABLE+4,OFFSETSUMI ;建立地址表 MOVBX,OFFSETTABLECALLROUTADD ;地址表首批送 BX 前三条指令是把待传送给子程序的参数数组的起始地址,数组长度和数组之和都放入地址表中,然后用寄存器 BX 指向 地址表首址,通过 BX 将地址表首址传到子程序中去,子程序通过地址表取得所需参数,并把结果存入指令的存储单元中 去,这种方法实质上是一个 2 次间接寻址的过程。第一次间接寻址,从 TABLE 表中得到数组的首地址,第二次间接寻址, 根据数组的首地址得到数组各元素的值。 解:源程序如下: PROGRAMSEGMENT ORG100H ASSUMECS:PR00RAM,DS:PROGRAM,SS:PROGRAM MAINPROCNEAR MOVAX,OFFSETARY MOVDS,AX MOVES,AX MOVTABLE,OFFSETARYI MOVTABLE+2,OFFSETCOUNT MOVTABLE 十 4,OFFSETSUMI MOVBX,OFFSETTABLE;地址表首地址送 BX CALLROUTDD MOVAH,4CH;返回 DOS INT21H MAINENDP ROUTADDPROCNEAR PUSHAX;保护现场 PUSHCX PUSHSI PUSHDI MOVSI,[BX];SI 指向数组首址 MOVDI,[BX+2] ;取数组长度作计数值 MOVCX,[DI] MOVDI,[BX+4];DI 指向结果单元 XORAX,AX;清和 MOVDX,AX CACULS:ADDAX,[SI];求和 JNCCOUPT INCDX COUPT:ADDSI,2 L00PCACULS MOV[DI],AX;存和 MOV[DI+2],DX POPDI;恢复现场 POPSI POPCX POPAX RET ROUTADDENDP ARYDWn,H,0ABCH COUNTDW($-ARY)/2 SUMDW?,? TABLEDW3DUP(?);保留 3 个字单元作地址表 PR00RAMENDS ENDMAIN;汇编结束 此例,大家还需要注意的是其编写的格式。本例是按照 DOS 下的.COM 程序格式编写的,具体来讲,有如下特点: 1. 整个程序只有一个段,而且也不需要定义堆栈段. 2. 程序的入口应定义在该段偏移地址的 0100H 处,例子中用 ORG100H 来保证. 10.求由任意个字组成的数组之和,其和为双字。用堆栈传递数据的参数。 分析及答案:分析:使用堆栈来传递参数是高级语言中广泛使用的一种方法。其明显的优点是,当主子程序调用关系结束 后,参数就会从堆栈中清除,参数只是临时占用内存单元。而不像全局变量那样&永久地”占用内存单元。由于此种原因, 堆栈中变量也被称为&自动变量” 。当然,本方法相对于前面两种方法,可能稍复杂一些。 具体做法是:在主程序中首先将数据的参数(这里是指三个地址)推入堆栈,再调用子程序,在子程序 ROUTADD 中从堆栈 中适当地址(需计算一下)取出参数,以达到传送数据的目的。 最后,子程序返回主程序之前,要清除掉推入的参数,恢复堆栈 到推入参数之前的的状态,这通过 RETN 来实现。 解: DATASEGMEN ARYDWH,H,OABCH COUNTDW($-ARY)/2 SUMDW?,? DATAENDS STACKSEGMENTPARASTACK‘STACK?/P& DW100DUP(?) T0PLABELWORD STACKENDS CODE1SEGMENT;主程序 MAINPROCFAR ASSUMECS:CODEI,DS:DATA,SS:STACK START:MOVAX,CX;初始化 SS MOVSS,AX MOVSP,OFFSETTOP;初始化 SP PUSHDS;保护返回地址 SUBAX,AX PUSHAX MOVAX,DATA;初始化 DS MOVDS,AX MOVBX,OFFSETARY;以下将待传递的参数地址入栈 PUSHBX MOVBX,OFFSETCOUNT PUSHBX MOVBX,QFFSETSUM PUSHBX CALLFARPTRROUTADD;调用求和的子程序 RET MAINENDP CODE1ENDS CODE2SEGMENT ASSUMECS:CODEZ ROUTADDPROCFAR PUSHBP MOVBP,SP PUSHAX PUSHCX PUSHSI PUSHDI MOVSI,[BP+OAH];获取 ARY 地址参数 M0VDI,[BP+8];获取 COUNT 地址参数 MOVCX,[DI] MOVDI,[BP+6];获取 SUM 地址参数 XORAX,AX MOVDX,AX CACULS:ADDAX,[SI] JNCCOUPT INCDX COUPT:ADDSI,2 L00PCACULS MOV[DI],AX;存入以求的和 MOV[DI+2],DX POPDI POPSI POPCX POPAX POPBP RET6;清除传递的 6 字节参数 ROUTADDENDP CODZENDS ENDSTART 注意:由于主程序中在 CALL 指令之前,向堆栈推入了数据参数(地址),因此,子程序结束时,应使用带常量的返回语句 RET6,以便返回主程序后,堆栈能恢复原始状态。 要理解子程序中是如何获得传递参数的,必须明确两点: 1)采用BP间接寻址是对堆栈段进行寻址. 2)主子程序在调用时,堆栈中的状况. 子程序中的 BP-& 子程序中推入的 DI 子程序中推入的 SI 子程序中推入的 CX 子程序中推入的 AX 子程序入口处推入的的 BP 值 断点 IP 断点 CS SUM 地址 COUNT 地址 ARY 地址 当前的SP +2 +2 +2 +2 +2 +2 +2 +2 +2 11.内存中存放 1000 个双字节数有符号数,编程求出负数、正数、零的个数,并跟据结果给 NUMTYPE 变量赋值: NUMTYPE=1;正数较多 =0;零较多 =-1;负数较多 (设负数、正数、零的个数均不相等) 分析及答案:分析:本例需要解决两个问题:1)在 1000 个双字节数有符号数中,找出负数、正数、零的个数。2)要比较 这三个数中,哪个最大,并根据结果给 NUMTYPE 变量赋值。 涉及到的操作数分别是: 原数据:双字节有符号数 负数、正数、零的个数:双字节无符号数 NUMTYPE:单字节无符号数 涉及到的知识点:有符号数判断其符号;无符号数比较大小;循环程序的编制。 解: DATASEGMENT NUMTYPEDB? PLUSDW?;正数个数 MINUSDW?;负数的个数 ZERODW?;零的个数 NUMDW1000DUP(?) DATAENDS STACKSEGMENTPARASTACK‘STACK’ DW256DUP(?) STACKENDS CODESEGMENT ASSUMECS:CODE,DS:DATA,SS:STACK START:MOVAX,DATA MOVDS,AX MOVSI,OFFSETNUM MOVCX,1000 MOVBX,0;零的个数 MOVDX,0;负数的个数 MOVDI,0;正数个数 LP:LODSW TESTAX,8000H JNZMIN TESTAX,0FFFFH JNZPLS INCBX LOOPLP JMPG1 MIN:INCDX LOOPLP JMPG1 PLS:INCDI LOOPLP JMPG1 ;---------------------------------G1:MOVMINUS,BX MOVPLUS,DI MOVZERO,DX MOVNUMTYPE,0 MOVAX,BX CMPBX,DI JAEMZ0 CMPDI,DX JAMP JMPMM MZ0:CMPBX,DX JZMZ JMPMM MP:MOVNUMTYPE,1 JMPEXIT MZ:MOVNUMTYPE,0 JMPEXIT MM:MOVNUMTYPE,-1 EXIT:MOVAX,4C00H INT21H CODEENDS ENDSTART 请注意本例程序的格式,及退回到 DOS 操作系统的方法. 12. 8 个输入模拟量,经过多路开关选通后送入 A/D 转换器,多路开关由瑞口 4 输出的三位二进制码(对应 D。 、D; 、D。 位)控制。000 相应于选通 AO 输入,……,111 相应于选通 A7 输入,每次只送出一路模拟量至 A/D 转换器;同时由端口 4 输出的 D4 位控制 A/D 转换器的启动与停止。 A/D 转换器的 READY 信号由端口 2 的 D。 输至 CPU 数据总线,经 A /D 转换后的数据由端 U3 输至数据总线。所以,这样的一个数据采集系统,需要用到三个端口,它们有各自的地址。 答案:实现这样的数据采集过程的程序段为: STANT:MOVDL,0F8H;设置启动 A/D 转换的信号 MOVDI,OFFSETDSTOR;输入数据缓冲区的地址偏移量?/FONT&DI ;-------------------------------AGAIN:MOVAL,DL ANDAL,OEFH;使 D4=0 OUT4,A;停止 A/D 转换 ;-----------------------------CALLDELAY;等待停止 A/D 操作的完成 MOVAL,DL OUT4,AL;启动 A/D,且选择模拟星 A0 ;----------------------------------POLL:INAL,2 SHRAL,1;输入状态信息 JNCPOLL;若未 READY,程序循部等待 ;-----------------------------------INAL,3;否则,输入数据 STOSB;存至内存 INCDL;修改多路开关控制信号指向下一个 JNEAGAIN;8 个模拟星未输入完,循环 . . . DSTODB8DUP(?);已完,执行别的程序段 13. 利用并行打印机输出寄存器 An 中的字符,,本过程打印 AL 寄存器内的字符,打印机未打印 AL 中字符前,程序不返回。 答案:PRINTPROCNEAR PUSHAX PUSHDX;保护所用寄存器的内容 ;----------------------------------- ;输出数据 MOVDX,378H;数据端口地址 378H OUTDX,AL;输出要打印的字符 ;----------------------------------;检查打印机状态 MOVDX,379H;状态端口地址 379H WAT:INAL,DX;读打印机状态 TESTAL,80H;检查&忙”位 JEWAT ;-------------------------------;选通打印机打印 MOVDX,37AH;控制端口地址 37AH MOVAL,0DH;选通位=1(D0 位) OUTDX,AL;选通打印机 ;--------------------------------MOVAL,OCH;选通位=0(D0 位) OUTDX,AL;关打印机选通 ;---------------------------------POPDX;恢复寄存器内容 RET PRINTENDP
赞助商链接
微机原理随堂练习答案及解... 6页 2财富值喜欢此文档的还喜欢 《微机原理》练习测验题库 19页 免费 《微型计算机接口技术与应... 40页 免费 微机与接口技术期...微机原理练习测验题库一、选择题 二、填空题 三、判断题 四、简答题 五、程序...A.1 位 B.8 位 C.不定 回答下列问题,点击正确答案前的选择框: 12.无符号...计算机组成原理试题及答案... 6页 免费 计算机组成原理考试题库 36页 免费 计算机...组成原理复习题(仅供参考) 隐藏&& 微机原理及汇编语言复习题 一、选择题 1....微机原理练习题及答案_工学_高等教育_教育专区。第一章 微型计算机的基础知识 ...试编写程序,它轮流测试两个设备的状态寄存器,只要一个状态寄存器的第 0 位为 ...华中师范大学网络教育学院《微机原理》练习测试题库及答案_IT认证_资格考试/认证_教育专区。华中师范大学网络教育学院《微机原理》练习测试题库及答案 一、选择题 1...《微机原理与接口技术》复习题 微机原理与接口技术》 (所有答案仅供参考) 所有答案仅供参考)一、 单项选择题 1.8086CPU 通过( 1 A )控制线来区分是存储器访问,...从业资格考试《​微​机​原​理​》练​习​题 暂无评价|0人阅读|0次下载|举报文档声明:此习题答案非标准答案,仅供参考,若有疑问可咨询老...2013微机原理试题答案(2)_工学_高等教育_教育专区。微机原理答案 仅供参考12/13 学年 第课程名称 二 学期末考试试题(A 卷)微机原理与接口技术 使用班级: 总分...微机原理课后练习题-答案_工学_高等教育_教育专区。第一章 课后练习题一、 1...测试 PA7 是否为 0 ;从端口 A 输入信息 MOV AL,0FFH KO: MOV DX,424H ...微机原理考试综合练习题1参考答案_工学_高等教育_教育专区。微机原理考试综合练习题1参考答案一、选择题: (每空格 1 分,共 18 分) 1、()2= A ...
All rights reserved Powered by
www.tceic.com
copyright &copyright 。文档资料库内容来自网络,如有侵犯请联系客服。

我要回帖

更多关于 8088 8086的区别 的文章

 

随机推荐