文档视界 最新最全的文档下载
当前位置:文档视界 › 微机原理汇编语言与接口技术课后答案

微机原理汇编语言与接口技术课后答案

微机原理汇编语言与接口技术课后答案【篇一:《微机原理、汇编语言与接口技术》复习练习

题与答案(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、64h。

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.64mb/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,64

d.1,16,32,64

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区:640kb

保留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?(989350.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:64h 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=89h

(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位,如果采用它们直接寻址,则寻址能力势必限制在64 kb范围内,而采用分段组织可以较好地实现扩展cpu的寻址能力。每段的大小可达64 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

相关文档
相关文档 最新文档