微机原理汇编语言与接口技术课后答案【篇一:《微机原理、汇编语言与接口技术》复习练习
题与答案(new)】 lass=txt>一、填空题
1、8086/8088 cpu内部结构按功能分为两部分,即由单元和单元组成。
2、若cpu的数据线宽度为16位,则它的字长为位;地址线宽度为20位,则它的寻址空间为 1mb 。
3、8086cpu为了适应各种应用场合有两种工作模式,即是最小模
式和最大模式。 4、8086/8088cpu复位后,cs的内容为 0ffffh , ip的内容为0000h 。
5、8086的16位标志寄存器包括 6 个状态标志位和 3 个控制标志位。
6、计算机的i/o端口地址的编址方式有统一编址和编址, 而8086cpu寻址外设采用编址方式。
7、cpu与外设间有4种i/o信息传送方式,即无条件传送、查询传送
中断传送、直接存储器存取(dma)。
8、若某输出外设的i/o接中的数据端口地址为100h,要将字节数
据从8086cpu输出到外设的指令是mov dx,100h和out dx,al。
9、响应可屏蔽中断intr的条件是控制标志if= 1。
10、若8253的某一计数器用于输出方波,该计数器的工作方式为;若该计数器输入频率为100khz,输出方波频率为10khz,则计数初
值应设为 10。
11、串行通信协议分为和。
12、波特率是指单位时间内传送二进制数据的位数。 13、8088 组成的系统中,存储器分个不超过字节的段。 14、当8088cpu的intr端输入一个电平时,获得了中断请求。 15、8088工作于最小工作模式时,控制总线由产生,工作于最大 工作模式时,控制总线由总线控制器8288产生。
16、数据的并行i/o方式是以为单位进行传送;数据的串行i/o方式是以为单位进行传送。
17、从地址/数据复用线中分离出地址信息需用逻辑芯片,地址/数
据复用线中的双向数据传送需用逻辑芯片双向缓冲器。 18、中断优先权管理的方法有、和。
19、若8253的某一计数器用于输出方波,该计数器的工作方式为;若该计数器的输
入频率为100khz,输出方波频率为10khz,则计数初值应设置为10。
20、在8259初始化控制字中,和为必写控制字, 21、8237a的四种工作方式为、、、
22、adc0809是型a/d转换芯片,有个模拟通道,
23、串行通信线路有三种连接方式,即和。 24、8086cpu时钟 频率为5mhz时,它的典型总线周期为ns。
25、可编程定时/计数器8253内含个计数器,每个计数器的三个引
脚为、 gate 和 out。
26、8255有多种工作方式, a口有 3 种工作方式,b口有 2 种 工作方式,c口有 1 种工作方式。
27、8086cpu寻址外设为编址方式,使用专门的i/o指令为以
及
28、总线是。
29、8259有高电平和边沿两种触发方式。
30、根据中断请求来自外部或来自内部,中断分为硬件中断和软件中断。
31、某微机系统采用一块8253芯片,时钟频率为1mhz。若要求通道0工作于方式3,输出的方波周期为0.5ms,则计数值应设定为
__500__,通道控制字应设定为___36h_或37h____。 32、8086的 中断向量表位于内存的区域,它可以容纳个中断向量,每一个向量
占__4_ _ 个字节。
33、若8086 cpu引脚状态是m/=1,=1,=0,则此时执行的操作是_
34、多片8259a级联时,主片必须采用的嵌套方式是。 35、8251芯片中设立了_、____三种出错标志。
36、8259a共有个可编程的寄存器,它们分别用于接受cpu送来的
_命令字和__操作__命令字。
37、8086cpu的mn/mx引脚的作用是__决定cpu工作在什么模式(最小/最大)__。
38、8086中引脚bhe信号有效的含义表示。
39、一个串行异步通信的字符格式由一个起始位,7个数据位,一个奇偶效验位和一个停止位构成,若每秒传送240个字符,则数据传送的波特率是__2400bd__,传送每位信息所占用的时间是
__0.417ms__。
40、cpu在执行in al,dx指令时, m/ 引脚为电平, 为
41、汇编指令通常包括和两部分。 二、单项选择题
1、8086/8088cpu与慢速的存储器或i/o接口之间为了使速度能匹配,有时需要在( c )状态之间插入若干个等待周期tw 。
a、t1和t2; b、t2和t3 ; c、t3和t4; d、随机。
2、在并行可编程电路8255中,8位的i/o端口共有( c )。 a、 1个; b、2个; c、、3个; d、4 个。
3、可编程定时/计数器电路8253的工作方式共有( d )。 a、3种; b、4种; c、5种; d、6种。
4、8086系统中外设请求总线控制权是通过控制线( c )。 a、nmi; b、test; c、hold; d、intr。
5、可用作总线控制器的接口芯片是( c )。 a、8255; b、8251; c、8288; d、8237a。
6、 pc/xt 机的有效i/o端口地址范围是( b )。 a、0~0ffh; b、0~3ffh ; c、0~ffffh; d、0~fffffh。
7、当微机系统工作在dma方式时,该系统的地址信号是由(b )
提供的。
a、微处理器; b、dma控制器; c、中断控制器; d、总线控制器。
8、中断号为16h 的中断向量在中断向量表的首址为( a)。 a、58h; b、60h; c、62h; d、h。
9、8259的中断屏蔽寄存器为( b )。 a、irr; b、imr; c、isr; d、都不是。
10、dac0832是( b)位的数模转换芯片。 a、4; b、8; c、12; d、16。
11、8088cpu工作在最小模式,( d )引脚接+5v. a.dt/r b.wr c.den d.mn/mx
12、 cpu对存储器访问时,地址线和数据线的有效时间关系为 ( b )。 a.同时有效 b.地址线先有效 c.数据线先有效
d.同时无效
13、常用接口芯片 74ls245是(b)。 a.锁存器 b.缓冲器 c.计数器 d.反相器
14、通常一个外设的状态信息在状态端口内占有( a )位。 a.1 b.2 c.8 d.16
15、通常8088 cpu在( a )时刻采样ready信号,若无效在t3和
t4之间插入tw。 a. t3下降沿 b.t2上升沿 c.t3上升沿
16、8088 cpu中断优先级顺序为(d )。 a.nmi中断、intr中断、软中断 b.nmi中断、软中断、intr中断 c.软中断、intr中断、nmi中断 d.软中断、nmi中断、intr中断
17、若总线频率为8mhz,32位数据传送,总线带宽为( c)。 a.8mb/s b.16mb/s c.32mb/s
d.mb/s d.t4下降沿
18、当微机系统工作在dma方式时,该系统的地址信号是由(b )提供的。
a.微处理器
b.dma控制器 c.中断控制器 d.总线控制器
19、分辨率为16位的dac能给出满量程电压的( d)分辨能力。 a.1/255 b.1/127 c.1/511 d.1/65535
20、 rs-232标准定义的表示数据信号逻辑“1”的电平为( b)。 a.+5v~+15v间任一电压 c.+5vb.-15v~-5v间任一电压 d.0v
21、用8259a管理优先级时,当一个中断请求服务结束后,其中断
源的优先级降为最低,其余中断源优先级也相应变化,这是一种 ( a )方式。
a.自动循环 b.完全嵌套 c.特殊循环 d.特殊屏蔽
22、异步通信方式的时钟频率可以选择波特率的( d )倍四种之一。 a.1,2,4,5 b.1,8,16,32 c.2,16,32, d.1,16,32,
23、8255a的方式选择控制字应写入(d)。 a. a口 b. b口 c. c口 d. 控制口
24、两片8259a构成级联方式的中断控制器,可连( c)中断源。 a.8 b.16
c.15 d.24
25、8086cpu用ale的下降沿将t1期间出现的( a )信息锁存在外部地址锁存器中。
a. a0~a19b. c.a和b d.d0~d15
26、若8259a工作在优先级自动循环方式,则irq3的中断请求被响
应并且服务完毕后,优先权最高的中断源是(d)。 a.irq0b.irq2c.irq3 d.irq4
27、最小模式下,数据收发器进行数据接收时,dt/r和den引脚分
别为( c )电平。 a、高,高 b、高,低 c、低,低 d、低,高
28、微处理器与外设传送数据的过程中,只由硬件完成不需软件支
持的方式( a )。 a、dma b、无条件 c、查询 d、中断
29、当if=0,8088/8086cpu不响应( b )中断请求。 a.int n b.intr c.nmi d.into
30、设串行异步通信时,数据传送的速率是400字符/秒,每个字
符为12位二进制数据,则传送的波特率是 ( c )。 a、1200 b、2400 c、4800 d、9600 三、是非题
2、规则字即存放字数据的存储单元地址必顺为偶地址(√ )。 3、ip中存放的是正在执行的指令的偏移地址(√ )。 5、adc0809是8位逐次逼近型a/d转换芯片(√ )。 7、dma传送方式无需cpu干预,直接进行数据传送( √ ) 。 10、异步通信数据传送速率要比同步通信的低(√)。
11、8086cpu中,数据线d0~d15和地址线a0~a15为复用引脚。(√)
13、执行int 10h时,中服程序的入口地址在00040h开始存放。(√)
16、显示器内存是双端口内存。(√ )
17、可编程定时/计数器8253中含三个的16位计数器。(√ ) 18、在8259级联系统中,作为主片的8259a的某些ir引脚连接从片,同时也可以在另一些
【篇二:微机原理、汇编语言及接口技术-课后习题答案】五代 1.2 解:
微型计算机:以大规模、超大规模集成电路为主要部件,以集成了
计算机主要部件——控制器和运算器的微处理器为核心,所构造出
的计算机系统。
pc机:pc(personal computer)机就是面向个人单独使用的一类微机。
单片机:用于控制的微处理器芯片,内部除cpu外还集成了计算机的其他一些主要部件,如:rom、ram、定时器、并行接口、串行
接口,有的芯片还集成了a/d、d/a转换电路等。
数字信号处理器dsp:主要面向大流量数字信号的实时处理,在宿主系统中充当数据处理中心,在网络通信、多媒体应用等领域正得到越来越多的应用
1.3 解:
微机主要有存储器、i/o设备和i/o接口、cpu、系统总线、操作系统和应用软件组成,各部分功能如下:
cpu:统一协调和控制系统中的各个部件 系统总线:传送信息 存储器:存放程序和数据
i/o设备:实现微机的输入输出功能 i/o接口:i/o设备与cpu的桥梁 操作系统:管理系统所有的软硬件资源 1.4 解:
系统总线:传递信息的一组公用导线,cpu通过它们与存储器和i/o 设备进行信息交换。
好处:组态灵活、扩展方便
三组信号线:数据总线、地址总线和控制总线。
其使用特点是:在某一时刻,只能由一个总线主控设备来控制系统总线,只能有一个发送者向总线发送信号;但可以有多个设备从总线上同时获得信号。
1.5解:
(1)用于数值计算、数据处理及信息管理方向。采用通用微机,要求有较快的工作速度、较高的运算精度、较大的内存容量和较完备的输入输出设备,为用户提供方便友好的操作界面和简便快捷的维护、扩充手段。
(2)用于过程控制及嵌人应用方向。
采用控制类微机,要求能抵抗各种干扰、适应现场的恶劣环境、确保长时间稳定地工作,要求其实时性要好、强调其体积要小、便携式应用强调其省电。
1.6 解: 1 1.7 解:
i/o通道:位于cpu和设备控制器之间,其目的是承担一些原来由cpu处理的i/o任务,从而把cpu从繁杂的i/o任务中解脱出来。由10根信号线组成(a9-a0)。
1.8解:
bios:基本输入输出系统。
主要功能:用来驱动和管理诸如键盘、显示器、打印机、磁盘、时钟、串行通信接口等基本的输入输出设备
1.9 解:
基本ram区:0kb 保留ram区:128kb 扩展rom区:128kb 基本rom区:128kb 1.10 解:
(1)、数—用来直接表征量的大小,包括:定点数、浮点数。(2)、码—用来指代某个事物或事物的某种状态属性,包括:二进制、八进制、十进制、十六进制。
区别:使用场合不同,详见p16. 1.11 解: (1) 2
(174.66)10?(10101110.10101)2 (174.66)10?(ae.a8)16 (2)
(100011101011.01011)2?(2283.34375)10 (100011101011.01011)2?(8eb.58)16 (3)
(f18a6.6)16?(11110001100010100110.0110)2
(f18a6.6)16?(9350.375)10 1.12 解: 原码反码补码
+3700100101/25h00100101/25h 00100101/25h -3710100101/a5h11011010/dah 11011011/dbh 1.13 1.14 解: 无符号数:70d 补码有符号数:70d bcd码:46d ascii:f 1.15 解:
1)、相加后若出现和大于9,则将和减去10后再向高位进1 2)、若出现组间进位,则将低位加6 1.16 解: 详见课本16页。 1.17 解: c3 40 20 00 3 1.19 解: 1.20 解:
d:44h d:h cr:0dh lf:0ah 0:30h sp:20h nul:00h国标码:36 50h 机内码:b6 b0h
第二章 2.1
算术逻辑单元alu、寄存器组和控制器;
总线接口单元biu:管理8088与系统总线的接口负责cpu对接口 和外设进行访问执行单元eu:负责指令译码、执行和数据运算; 8位cpu在指令译码前必须等待取指令操作的完成,8088中需要译
码的指令已经取到了指令队列,不需要等待取指令。而取指令是 cpu最为频繁的操作,因此8088的结构和操作方式节省了大量等待
时间,比8位cpu节省了时间,提高了性能。 2.2
8个8位寄存器:ah、al、bh、bl、ch、cl、dh、dl;
8个16位寄存器:累加器ax、基址寄存器bx、计数器cx、数据寄
存器dx、源地址寄存器si、目的地址寄存器di、基址指针bp、堆
栈指针sp。 2.3
标志用于反映指令执行结果或者控制指令执行形式。
状态标志用于记录程序运行结果的状态信息;控制标志用于控制指
令执行的形式。 2.4
例:有运算:3ah+7ch=b6h 作为无符号数运算,没有进位,cf=0; 作为有符号数运算,结果超出范围,of=1. 2.5
8088中每个存储单元有唯一的20位地址,称为物理地址。处理器
通过总线存取存储器数据时,采用这个物理地址。
在用户编程过程中采用的“段地址:偏移地址”的形式称为逻辑地址。将逻辑地址中的段地址左移4位,加上偏移地址就得到物理地址。
1mb最多能分成65536个逻辑段。 4 2.6
代码段:存放程序的指令序列; 堆栈段:确定堆栈所在的主存储区; 数据段:存放当前运行程序的数据;
附加段:附加数据段,用于数据保存。另外串操作指令将其作为目
的操作数的存放区。 2.7
8088的存储空间分段管理,程序设计时采用逻辑地址。由于段地址
在默认的或指定的段寄存器中,所以只需要偏移地址,称为有效地
址ea.
操作数在主存中有以下几种寻址方式:直接寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、相对基址变址寻址。
2.8
(1)立即数寻址 ax:1200h (2)寄存器寻址 ax:0100h (3)存储器直接寻址 ax:4c2ah (4)寄存器间接寻址 ax:3412h (5)寄存器间接寻址 ax:4c2ah (6)基址变址寻址 ax:7856h (7)相对基址变址寻址 ax:65b7h 2.9
(1)cx为字寄存器,dl为字节寄存器,类型不匹配。
(2)mov指令的目的操作数只能是寄存器或者主存单元,ip是指针。
(3)不允许立即数到段寄存器的传送。 (4)不允许段寄存器之间的直接传送。 (5)数据溢出。
(6)sp不能用于寄存器间接寻址。
(7)格式不对。应为:mov ax,[bx+di] (8)mov指令的操作数不能是立即数。 2.10
(1)bx得到table的偏移地址,bx=200h. (2)将立即数8送到al。 (3)换码,al=12h. 2.11 (1)al=h
(2)al=12h,cf=1,zf=0,sf=0,of=1,pf=1 (3)al=0afh,cf=0,zf=0,sf=1,of=0,pf=1 (4)al=0afh,cf=1,zf=0,sf=1,of=1,pf=1 (5)al=0,cf=0,zf=1,sf=0,of=0,pf=1 (6)al=0ffh,cf=0,zf=0,sf=1,of=0,pf=1 5
【篇三:《汇编语言、微机原理及接口技术(第3版)》 郑初华_课后题解答】 >1.进制转换 3.数据表示范围:
一字节的无符号数表示范围为0~255,有符号数(补码)表示范围为-
l28—+127。一个字的无符号数表示范围为0~65535,有符号数(补码)表示范围为—32768~+32767。n位二进制数的无符号数表示范
围为0~(2n-1),有符号数(补码)表示范围为n-1~(2n-14.35h代表的ascii字符为8421bcd码等价的十进制值为,代表非压缩
8421bcd码等价的十进制值为
5.ffh代表无符号数时等价的十进制值为一1 ,代表反码有符号 数时等价的十进制值为一0 ,代表原码有符号数时等价的十进制值为一l27。
6.--20的8位二进制补码为158的16位二进制补码为009eh,
原
码为009eh ,反码为 009eh 。 第2章微机硬件基础
1.计算机系统硬件的五大功能部件及其主要功能?
答:硬件系统按功能模块分为运算器、控制器、存储器、输入设备、输出设备。运算器主要完成算术运算、逻辑运算及移位运算,其中
主要包括算术逻辑运算单元arithmetic logic unit,alu)和暂存数据(原始、中间、结果)的寄存器(register,r)。控制器实现对计算机部件的协调调度完成指令的分析执行,其中主要有程序计数器
program counter,pc)或叫指令指针(instruction pointer,ip)、指
令寄存器(instruction register,ir)、指令译码器(instruction decoder,id)、微操作命令发生器、时序发生器等。
存储器用来记忆程序与数据,它分为内存和外存,内存主要用于存
放正在或正待运行的程序和数据,外存用于存放暂时不运行的程序
和数据。
输入设备是实现将外界的信息输入计算机内部的部件,主要有键盘、鼠标等。
输出设备是实现将计算机内部的信息输出的部件,主要有显示器、 打印机等。
3.请简述计算机系统的构成,并说明软硬件之间的关系。 答:计算机系统由硬件系统和软件系统构成,硬件系统包括运算器、存储器、控制器、输入/输出设备.软件系统包括系统软件和应用软件.硬
件是我们可以看得见摸得着的物理设备,软件是运行计算机硬件上的
程序和数据的集合.他们之间的关系:硬件是基础,软件是灵魂;硬件
和
软件相辅相成缺一不可;硬件和软件互相促进发展. 5.微机的主要性能指标有哪些?
答:(1)字长。字长是指cpu可以同时运算或传输的二进制的数据位数。字长越长,速度越快,精度越高,表示范围越大。
(2)速度。在微机的表示速度用的最多的是cpu的主频,单位为ml-
lz或ghz,但实质
上并不一定是主频越高速度越快,如amd提出的pr表示法声称其l.3ghz的速龙xp可以达到l.6ghz的p4的速度。表示速度还有
另外两个单位:次,秒(每秒运算次数)、mips(百万条指令每秒)。 (3)容量。内存容量从原来的kb已上升到mb,2002年上半年以 256mb为主流配置。硬盘容量从原来的mb已上升到gb,目前主要
配置40gb l00gb的硬盘:
(4)外设配置。例如显示器、光驱、声卡、音箱、打印机等。 (5)软件配置。操作系统及其他系统软件和应用软件。 7.8086/8088 cpu为什么要分为biu和eu两大模块? 答:为了使取指和分析、执行指令可并行处理,提高cpu的执行效率。8086/88cpu有两大模块总线接口单元biu和执行单元eu组成。
参见教材《汇编语言、微机原理及接口技术(第2版)》2.3.1节“8086/8088 cpu的内部结构”。
8.简述8086/8088 cpu的两大模块biu和eu的主要功能及组成。答:如图2.2所示。
9.简述8086/8088 cpu的14个寄存器的英文名、中文名及主要
作用。
答:ax(accumulator)(ah、al)累加器,它是汇编编程中最常用的一
个寄存器,主要用于乘除运算、bcd运算、换码、i/o操作、串
操作、中断调用等。
bx(base)(bh、bl)基址寄存器,主要用于存放地址、基址(默认相对
于ds段)等。 cx(counter)(ch、cl)计数器,主要用于循环计数、串
操作计数、移位计数(cl)等。
dx(data)(dh、dl)数据寄存器,主要用于l6位乘除、问接i/o、中
断调用等。 bp(base pointer)基址指针,主要用于存放地址、基址(默认相对于ss段)等。 sp(stack pointer)堆栈指针(栈顶指针),主
要用于存放栈顶地址。
si(source index)源变址寄存器,用于存放地址、变址、串操作源变址。
di(destination index)目的变址寄存器,用于存放地址、变址、串 操作目的变址。
cs(code segment)代码段寄存器(代码段),用于存放正在或正待执
行的程序段的起始地址的高l6位二进制数据,即程序段的段地址。, ds(data segment)数据段寄存器(数据段),用于存放正在或正待处
理的一般数据段的起始地址的高l6位二进制数据,即一般数据段的
段地址。
es(extra segment)附加数据段寄存器(附加段),用于存放正在或正
待处理的附加数据段的起始地址的高l6位二进制数据,即附加数据
段的段地址。
ss(stack segment)堆栈数据段寄存器(堆栈段),用于存放正在或正
待处理的堆栈数据段的起始地址的高l6位二进制数据,即堆栈数据
段的段地址。
ip(instruction pointer)指令指针,它的内容始终是下一条待执行指
令的起始偏移地址,与cs一起形成下一条待执行指令的起始物理地址。cs:ip的作用是控制程序的执行流程。
ip
一般会自动加l(逻辑加1、实际随指令长度变化)移向下一条指令实
现顺序执行;若通过指令修改cs或ip的值,则可实现程序的转移 执行。
psw(program status word)程序状态字,它其中有三个控制标志(if、df、tf)和6个状态标志(sf、pf、zf、of、cf、af)。控制标志是用于
控制cpu某方面操作的标志,状态标志是部分指令执行结果的标志。 11.请说明8086/8088 cpu的标志位的英文名、中文名及通用填
充方法。
答:if(interrupt enable flag)中断允许标志,用于控制cpu能否响
应可屏蔽中断请求,if=1能够响应,if=0不能响应。
df(direction flag)方向标志,用于指示串操作时源串的源变址和目
的串的目的变址变化方向,df----1向减的方向变化,df=0向加的方
向变化。
tf(trapflag)陷阱标志(单步中断标志),tf=1程序执行当前指令后暂停,tf=0程序执行当前指令后不会暂停。
sf(sign flag)符号标志,指令执行结果的最高二进制位是0还是l,
为0,则sf=0,代表正数;为l,则sf=1,代表负数。我们一般是用十六进制数表示,则可以根据十六进制的最高位是落在o~7还是落
在8~f之间,若落在0~7之间则sf=0.否则sf=1。
pf(parity check flag)奇偶校验标志,指令执行结果的低8位中1的
个数是奇数个还是偶数个,若为奇数个则pf=0,若为偶数个则pf=1。 zf(zero flag)零标志,指令执行结果是不是为0,若为0则zf=1,否则zf=0。
of(overflow flag)有符号数的溢出标志,指令执行结果是否超出有
符号数的表示范围,若超过则0f=1,否则of=0。我们可以通过判断
是否出现以下四种情况之一:正加正得负,正减负得负,负加负得正,负减正得正。若出现则0f=1.否则of=0.
cf(carry flag)进位/借位标志无符号数的溢出标志),指令执行结果
的最高位是否有向更高位进位或借位,若有则cf=1,同时也代表无
符号数溢出;若无则cf=0,也代表无符号数未溢出。
af(auxiliary carry flag)辅助进位/借位标志,低4位二进制是不是
有向高位进位或借位,若有则af=1,否则af=0,其主要用于bcd修
正运算。
12.内存为什么要分段组织?
答:(1)8086/8088 cpu中的寄存器只有16位,如果采用它们直接寻址,则寻址能力势必在 kb范围内,而采用分段组织可以较好地实现扩展cpu的寻址能力。每段的大小可达 kb,不同段的组合则可寻址更大的范围。
(2)使程序与数据相对,不同存取方式的数据也相对。 程序:存放于代码段cs中 ss中
ds及附加段es中
(3)便于程序和数据的动态装配,从一个地方挪到另外一个地方只要更改一下段寄存器的值即可,段内偏移可以不用改变。但内存地址采用分段组织增加地址计算的复杂度,降低了cpu的执行效率。
14.设ds=26fch,bx=108h,si=9a8h,试求出使ds:bx与es:sl指向同一物理地址的es值。
答:即ds:bx=es:si
15.接口、端口、端口地址之间的对应关系如何?
答:一个计算机系统内有很多接口,一个接口内一般有多个端口,一个端口可以有多个端口地址与其对应(这叫重叠地址),一个端口地址可以对应多个端口(但需要继续区分才能访问,如读写顺序、读写信号、数据位、索引区分)。所以通过端口传输信息首先需要区分端口,区分端口可通过端口地址不同来区分。
20.某程序在当前数据段中存放有两个数据l234h和5678h,若已知ds=2010h、偏移量分别为3400h和4501h,请写出这两个数据在存储器中的物理地址。
23500h单元存34h,23501h单元存12h 24601h单元存78h,24602h单元存56h 第3章寻址方式及指令系统
1.指令是指令有两个级别,即机器级和汇编级。 3.指令主要有哪些分类方式及其主要类别是什么?
答:指令分类有不同的方式。按操作数的个数将指令分为零地址指令(无操作数)、一地址指令(只有一个操作数)、二地址指令(有两个操作数)、多地址指令(多于两个操作数);按指令级别分为机器指令和汇编指令:按是否转移分为转移指令和顺序指令;按功能分为七大类:传送类、算术运算类、位操作类、i/o类、串操作类、cpu控制类、转移类;按指令长度(即指令占用的字节数)分为l字节指令、2字节指
令等,8086/8088指令长度是不同的,叫变字长,不同的
指令有不同的指令长度,从1~6字节均有;按指令执行期间取操作
数是否需要与总线打交道分为内部指令(不需)和外部指令(需要),类
似功能的指令内部指令比外部指令执行速度快,所以在编程时尽量
采用内部指令即多用寄存器优化程序。
4.操作数的寻址方式有哪些?并举例说明其主要特点。
答:操作数寻址方式主要有立即寻址方式、寄存器寻地址、存储器
寻址方式、端口寻址方式4类.
(1)立即寻址方式:操作对象是这个操作数本身,moval、5 (2)寄存器寻地址:操作对象是寄存器中的内容movax、bx (3)存储器寻址方式:操作对象是内存地址所对应的存储单元中的内 容,mov ax i2000hj
(4)端口寻址方式:操作数是指明端口的地址、端口地址所对应的端口
中的内容是操作对象 in ax, 46 a,4直接寻址.
6.设cs=1000h,ds=2000h,es=3000h,ss=4000h,ip=100h,sp=200h,bx=300h,bp=400h,si=500h,则①下一条待执行指令
的物理地址为多少?②当前栈顶的物理地址为多少?③[bx]代表的存
储单元的物理地址为多少?④[bp]代表的存储单元的物理地址为多 少?⑤es:[bx+si]代表的存储单元的物理地址为多少? 7.试根据以下要求,分别写出相应的汇编语言指令。
(1)以寄存器bx和dl作为基址变址寻址方式把存储器中的一个字送
到dx寄存器。答:mov dx,[bx+di]
(2)以寄存器bx和偏移量value作为寄存器相对寻址方式把存储器 中的一个字和ax相加,把结果送回到那个字单元。 答:add value[bx],ax
(3)将1字节的立即数086h与以sl作为寄存器间接寻址方式的字节
单元相比较。答:cmp byte ptr[si],086h (4)将bh的高4位与低4位互换。 答:mov cl,4
ror bh,cl ;或者rol bh,cl
(5)测试bx的第3、7、9、12、13位是否同时为0。 答:test bx,3288h;0011001010001000b
(6)将存放了0~9数值的dl寄存器中的内容转化为相应的~0~~9
的字符。
答:add dl,30h ;或者or dl,30h
(7)将存放了?a?~?f?字符的al寄存器中的内容转化为相应的数值。 答:sub al,37h
10.指出下列指令错误的原因。
答:(1)mov cl,300 ;300超过字节数据表示范围 (2)mov cs,ax;cs不能作为目的操作数 (3)mov bx,dl;数据类型不匹配
(4)mov es,1000h :立即数不能送给段寄存器 (5)inc[bx] ;数据类型不明确 ?
(6)add ax,ds :段寄存器不能参加运算
(7)test bx,[cx] ;存储器间接寻址只能使用bx、sl、dl、bp四个之一
(8)sub [bx],[bp+si] ;加减两个操作数不能同时为存储操作数 (9)jc [si] ;条件转移只有短转移寻址方式
(10)shl bx ;少给一个表明移位次数的操作数,l或cl 12.分别说明下列各组指令中的两条指令的区别。
答:(1)mov ax,table lea ax,table 假设table为字变量名,则:
左为将table单元的内容送ax,右为将table单元的偏移地址送ax 假
设table为字节变量名,则:
左为错误指令,右为将table单元的偏移地址送ax 假设table为常量名,则:
左为将table的内容送ax,右为错误指令 (2)and bl,0fhor bl,0fh
左为将bl的高4位清0,右为将bl的低4位置1 (3)jmp short lljmp nea rptr ll
左为短转移,2字节的指令,转移范围为一l28~+127 右为近转移,l字节的指令,转移范围为--32 768+32 767 左为将bx的值送ax
右为将bx的值作为相对ds段的内存单元偏移地址,取出字单元值送ax
(5)sub dx,cx cmp dx,cx
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo0.com 版权所有 湘ICP备2023021991号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务