微机原理与接口技术试题集 (一)_第1页
微机原理与接口技术试题集 (一)_第2页
微机原理与接口技术试题集 (一)_第3页
微机原理与接口技术试题集 (一)_第4页
微机原理与接口技术试题集 (一)_第5页
已阅读5页,还剩104页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一章微型计算机根底

习题一

1.简述微型计算机系统的组成。

2.简述计算机软件的分类及操作系统的作用。

3.将以下十进制数转换成二进制数:

(1)49;(2)73.8125;(3)79.75

4

5.将十六进制数变换成二进制数和十进制数:

(1)FAH;(2)5BH;(3)78A1H;(4)FFFFH;(5)34.2AH:(6)B8.93H

6.将以下十进制数转换成十六进制数:

(1)39:(2)299.34375;(3)54.5625

7.将以下二进制数转换成十进制数:

(1)10110.101B;(2)10010010.001B;(3)11010.1101B

8.计算(按原进制运算):

(1)10001101B+11010B;(2)10111B+11100101B;(3)1011110B-1110B:

(4)124AH+78FH;(5)5673H+123H;(6)1000H-F5CH;

9.a=1011B,b=11001B,c=100110B,按二进制完成以下运算,并用十进制运算检查计算结果:

(1)a+b;(2)c-a-b;⑶a,b;(4)c/b

10.a=00111000B,b=l100011IB,计算以下逻辑运算:

(1)aANDb;(2)aORb;(3)aXORb;(4)NOTa

11.设机器字长为8位,写出以下各数的原码和补码:

(1)+1010101B;(2)-1010101B;(3)+1111111B;

(4)-UU111B;(5)+1000000B;(6)-1000000B

12.写出以下十进制数的二进制补码表示(设机器字长为8位):

(1)15;(2)-1:⑶117:(4)0;

(4)-15:(5)127;(6)-128:(7)80

13.设机器字长为8位,先将以下各数表示成二进制补码,然后按补码进行运算,并用十进制数运算进

行检验:

(1)87-73:(2)87+(-73);(3)87-[-73):

⑷(-87)+73;(5)(-87)-73;(6)(-87)一(-73);

14.a,b,c,d为二进制补码:3=001100103,b=01001010B,c=11101001Btd=10111010B,计算:

(1)a+b;(2)a+c:(3)c+b;(4)c+d;

(5)a-b;(6)c-a;(7)d-c;⑻a+d-c

15.设以下四组为8位二进制补码表示的十六进制数,计算a+b和a-b,并判断其结果是否溢出:

(1)a=37H,b=57H:(2)a=0B7II,b=0D7II;

(3)a=0F7H,b=OD7H;(4)a=37H,b=0C7H

16.求以下组合BCD数的二进制和十六进制表示形式:

(1)3251(2)12907(3)ABCD(4)abed

17.将以下算式中的十进制数表示成组合BCD码进行运算,并用加6/减6修正其结果:

(1)38+42;(2)56+77;(3)99+88;(4)34+69;

(5)38-42:(6)77-56:(7)15-76:(8)89-23

18.将以下字符串表示成相应的ASCII码(用十六进制数表示):

(1)Example1;(2)JinanUniversity:(3)-108.652;

(4)Howareyou?;(5)Computer(6)InternetWeb

19.将以下字符串表示成相应的ASCII码(用十六进制数表示):

(1)Hello(2)123<CR>456;(注:<CR>表示回车)⑶ASCII;

(4)Thenumberis2315

习题二

一、选择题

1.80486CPU进行算术和逻辑运算时,可处理的信息的长度为()o

A、32位B、16位C、8位D、都可以

2.在下面关于微处理器的表达中,错误的选项是()。

A、微处理器是用超大规模集成电路制成的具有运算和控制功能的芯片

B、一台计算机的CPU含有1个或多个微处理器

C、存放器由具有特殊用途的局部内存单元组成,是内存的一局部

D、不同型号的CPU可能具有不同的机器指令

3.假设用MB作为PC机主存容量的计量单位,1MB等于()字节。

A、210个字节B、220个字节C、230个字节D、240个字节

4.运算器在执行两个用补码表示的整数加法时,判断其是否溢出的规那么为()o

A、两个整数相加,假设最高位(符号位)有进位,那么一定发生溢出

B、两个整数相加,假设结果的符号位为0,那么一定发生溢出

C、两个整数相加,假设结果的符号位为1,那么一定发生溢出

D、两个同号的整数相加,假设结果的符号位与加数的符号位相反,那么一定发生溢出

5.运算器的主要功能是()o

A、算术运算B、逻辑运算C、算术运算与逻辑运算D、函数运算

6.运算器由很多部件组成,其核心同部是()o

A、数据总线B、算术逻辑单元C、累加器D、多路开关

7.在一般的微处理器中,()包含在CPU中。

A、内存B、输入/输出单元C、磁盘驱动器D、算术逻辑单元

8.80486CPU的标志存放器中,OF标志表示运算结果的()情况。

A、进/借位B、符号C、溢出D、辅助进位

9.假设某数据段位于存储区38000H〜47FFFH,那么该数据段的段基址为()。

A、38000HB、47FFFHC、3000HD、3800H

10.程序设计中所使用的地址是()。

A、逻辑地址B、有效地址C、物理地址D、段基址

11.80X86执行程序时,对存储器进行访问时,物理地址可由()组合产生。

A、SS和IPB、CS和IPC、DS和IPD、CS和BP

12.某处理器与内存进行数据交换的外部数据总线为32位,它属于。

A、8位处理潜B、16位处理器C、32位处理器D、64位处理器

13.在堆栈操作中,隐含使用的通用存放器是()。

AsAXB、BXC、SID、SP

14.主要决定微机性能的是()

A、CPUB、耗电量C、质量D、价格

15.十进制负数-38的八位二进制补码是()

A、01011011BB、11011010BC、11011011BD、01011010B

16.假设某台微型计算机的型号是奔四800,那么其中800的含义是(

A、CPU中有800个存放器B、CPU中有800个运算器

C、该微机的内存为800MBD、时钟频率为800MHz

17.在计算机内部,一切信息的存取,处理和传送都是以()形式进行。

A、EBCDIC码B、ASCH码C、十六进制编码D、二进制编码

18.16位PC机中整数的有效范围是()

A、-32768-32767B、-32767-32767

C、0-65535D、-32768—32767或0-65535

19.在()表示中,二进制数表示十进制数-1

A、原码B、反码C、补码D、BCD码

20.用8位的二进制数的补码形式表示一个带符号数,它能表示的整数范围是()

A、-127—+127B、-128—+128C、-127—+128D、-128—+127

21.计算机中运完器和控制器合称为()

A、CPUB、ALUC、主机D、ENIAC

22.32位的个人计算机,一个字节(Byte)由()位(bit)组成。

A、4B、8C、16D、32

23.假设机器中浮点数的表示格式如下:

阶符阶码尾符尾码

当尾数用补码,阶码(阶码基数为2,尾数以规格化数表示)用补码表示时,-123.625的表示形式

为()。

24.从功能上,8086的CPU由()两局部组成。

A、SP、ALUB、控制器、FLAGSC、EU、BIUD、EU、ALU

25.标志存放器FLAGS中存放两类标志,即()。

A、符号标志、溢出标志B、控制标志、状态标志

C、方向标志、进位标志【)、零标志、奇偶标志

26.假设AL=3BH,AH=7DH,那么AL和AH中的内容相加后,标志CF、SF和0F的状态分别是()。

A、0、1、1B、1、1、1C、0、0、0D、1、1、0

27.假设AL=3BH,AH=7DH,那么AL和AH中的内容相减后,标志CF、AF和PF的状态分别是()。

A、0、0、1B、1、1、1C、0、1、0D、1、0、0

28.以下有关指令指针存放器的说法中,哪一个是正确的()。

A、IP存放当前正在执行的指令在代码段中的偏移地址

B、IP存放下一条将要执行的指令在代码段中的偏移地址

C、IP存放当前正在执行的指令在存储播中的物理地址

D、IP存放当前正在执行的指令在存储器中的段地址

29.最小模式时,当M/IO为低电平时,表示CPU正在对()进行访问。

A、存储器B、I/O端UC、外部存储器D、EPROM

30.下面有关MN/MX的表达正确的选项是()

A、是工作模式选择信号,由CPU产生,为高电平时CPU工作在最小模式,为低电平时,CPU工作在最大

模式

B、是工作模式选择信号,由CPU产生,为低电平时CPU工作在最小模式,

为高电平时,CPU工作在最大模式

C、是工作模式选择信号,由外部输入,为低电平时CPU工作在最小模式,为高电平时,CPU工作在最大

模式

D、是工作模式选择信号,由外部输入,为高电平时CPU工作在最小模式,为低电平时,CPU工作在最大

模式

31.某CPU的主频为250VHZ,那么它的时钟周期为()

A、250nsB、50nsC、40nsD、4ns

32.如果访问存储器时使用BP寻址,那么默认的段存放器是()

A、CSB、ESC、DSD、SS

33.某单元在数据段中,DS=1000H,偏移地址为1200H,那么它的物理地址为()

A、10000HB、11200HC、12100HD、13000H

34.某系统中,SS=2360H,SP=0800H,假设将20H个字节的数据入栈,那么SP的内容为()

A、0780HB、0820HC、23E20HD、07E0H

35.某系统中,建立堆栈时SS=2360H,SP=0800H,经过一段时间后,SP的内容变为0700H,那么堆栈中

有多少个字的数据1)

A、80HB、50HC、100D、100H

36.设某一个单元的物理地址是54321H,那么正确的逻辑地址表示为()

A、4321H:50000HB、54320H:1HC、5430H:0021HD、5432H:00001H

37.如果一个程序在执行前CS=1000H,IP=2000H,该程序的起始地址是()

A、3000HB、12000HC、21000HD、1000H

38.如果一个堆栈从地址1250H:0100H开始,SP=0050,那么SS的段地址是()

A、12600HB、1260HC、1265HD、125BH

39.假设[X]补=11EO1O11B,[Y]补=01001010B,那么[X-Y]补=()

A、10100001BB、11011U1BC、10100000BD、溢出

二、判断题

1.80486的逻辑段不允许有段的重叠和交叉。

2.在80486的32位标志存放器中,其每一位都有一定的含义。

3.假设一个数据块的起始地址为20A0H:0F6H,那么该数据块起始地址的实际地址是21B60H。

4.SP的内容可以不指向堆栈的栈顶。

5.存放器寻址其运算速度较低。

6.字长是描述CPU数据总线宽度的指标。

7.计算机的堆栈是•种特殊的数据存储区,数据存取采用先进先出的原那么。

8.当运算结果各位全部为零时,标志ZF=0。

9.逻辑地址不是物理地址,但它是唯一的。

三、填空题

1.计算机是通过()、()、()总线把各个部件连接在一起,构成一个系统。

2.8086的数据总线是()位,地址总线是()位。

3.PC机主存储器中的根本存储单元的长度是(

4.80486可访问8位、()、和()、()位的存放器。

5.在微处理器的实地址方式下,段存放器的作用是()。

6.假设一个数中含有3个“1”,那么其奇偶标志为(),>

8.80486工作在实模式下时,假设需对堆栈区进行操作,其物理地址是由()和()组合产。

9.程序设计中使用的地址称为(),而CPU对存储器单元进行操作时使用的地址称为(),,

10.按存储器的分级原那么,其容量最大的一级存储器成为()。

11.按存储器的分级原那么,其速度最快的一级存储器成为()o

12.微机的主要性能指标中,字长是指().

13.微型计算机由《)和()两大局部组成。

14.上电复位时,假设CPU的CS=0FFFFH,IP=0000H,那么第一条指令从()H方取

15.8088与外部交换数据的总线宽度是位,与存放器组之间的数据总线宽度是位,EU内部总

线宽度是位。

16.设AL=80H,AH=83H,AL和AH中的内容相加后,CF=,0F=,ZF=,PF=,AF=,

SF=°

17.8086/8088将整个存储空间划分为许多逻辑段,每个逻辑段容量在

以内,各个逻辑段相互重登。

18.8086/8088中,某单元只能有一个地址,但可以有多个地址。

19.如果对堆栈进行操作,那么段基址来源于,偏移地址来源于o

20.某存储单元物理地址为32413H,那么相对于段地址为3000H,其偏移地址

为,假设,它的偏移地址是1003H,那么其段地址为。

21.在8086/8088系统中,所有读写存储器或I/O端口操作都是由通过系统总线完成的。

四、简答题

1.简述EU和BIU的主要功能?

2.8086和8088的主要区别是什么?

第二章微处理器结构

习题一

一、简答题

1.微处理器内部结构由哪几局部组成?阐述各局部的主要功能。

2.微处理器级总线有哪儿类?各类总线有什么作用?

3.为什么地址总线是单向的,而数据总线是双向的?

4.8086/8088微处理器内部有哪些存放器?其主要作用是什么?

5.什么是虚拟存储器?其作用是什么?80386/80486的虚拟存储器容量最大有多少?

6.何为RISC技术?与CISC相比其主要特点是什么?

7.80386/80486有哪三种工作模式?各有何特点?

8.什么叫流水线技术和超标量、超流水线技术?

9.什么叫高度缓冲存储器技术?微机采用这种技术的根本目的是什么?

10.试比拟实工作模式和仿8086工作模式的异同。

11.8086的逻辑地址、物理地址和线性地址分别指什么?它们的寻址能力分别为多少?

12.保护工作模式下的保护是何含义?该工作模式下主要进行哪几方面的保护功能?

13.DOS下对超过640KB的内存如何管理?

14.以下操作可使用哪些存放器?

(1)加法和减法;(2)循环计数;(3)乘法和除法;(4)保存段地址;

(5)表示运算结果的特征;(6)指令地址;(7)从堆栈中取数的地址:

15.将以下两组的词汇和说明关联起来:

(1)CPU;A.保存当前栈顶地址的存放器;

(2)EU:B.指示下一条要执行指令的地址;

(3)BIU:C.总线接口部件,实现执行部件所需要的所有总线操

作;

(4)IP;D.分析并控制指令执行的部件;

(5)SP:E.存储程序、数据等信息的记忆装置,PC机有RAM和

ROM两种;

(6)存储器:F.以后进先出方式工作的存储器空间;

⑺堆栈;G.把汇编语言程序翻译成机器语言程序的系统程序;

(8)指令;H.惟一代表存储器空间中的每个字节单元的地址;

(9)状态标志;I.能被计算机直接识别的语言;

(10)控制标志:J.用指令的助记符、符号地址、标号等符号书写程序的语言:

(11)段存放器:K.把假设干个模块连接起来成为可执行文件的系统程序:

(12)物理地址:L.保存各逻辑段的起始地址的存放器:

(13)汇编语言:M.控制操作的标志,PC机有三位:DF、IF、TF;

(14)机器语言:N.记录指令操作结果的标志,PC机有六位:OF、SF、ZF、AF、

PF、CF:

(15)汇编程序;0.执行部件,由算术逻辑单元(ALU)和存放器组等组成;

(16)连接程序;P.由汇编程序在汇编过程中执行的指令;

(17)目标码;Q.告诉CPU要执行的操作,在程序运行时执行;

(18)伪指令R.机器语言代码。

16.IBMPC有哪些存放渊可用来指示存储器的地址?

二、计算选择题

1.如果某微处理器有20条地址总线和16条数据总线:

(1)假定存储器地址空间与I/O地址空间是分开的,那么存储器地址空间有多大?

(2)数据总线上传送的有符号整数的范围有多大?

2.将十六进制数62A0H与以下各数相加,求出其结果及标志位CF、AF、SF、ZF、OF和PF的值:

(1)1234H;

(2)4321H;

⑶CFAOH;

(4)9D60H

3.从以下各数中减去4AE0H,求出其结果及标志位CF、AF、SF、ZF、0F和PF的值:

(1)1234H;

(2)5D90H:

(3)9090H:

(4)EA04H

4.写出以下存储器地址的段地址、偏移地址和物理地址:

(1)2134:10A0:

(2)1FA0:OALF;

(3)267A:B876

5.给定一个数据的有效地址为2359H,并旦(DS)=490BH,求该数据的物理地址。

6.如果在一个程序段开始执行之前,(CS)=0A7F0H,(IP)=2B40H,求该程序段的第一个字的物

理地址。

7.设(BX)=637DH,(SI)=2A9BH,位移量=0C237H,(DS)=3100H,求以下寻址方式产生的有

效地址和物理地址:

(1)直接寻址:

(2)用BX的存放器间接寻址:

(3)用BX的存放器相对寻址:

(4)用BX和SI的基址变址寻址:

(5)用BX和SI的基址变址且相对寻址

8.假设(CS)=520011时,物理转移地址为5A238H,那么(CS)变成7800H时,物理转移地址为多少?

9.设(CS)=0200H,(IP)=2BC0H,位移量=5119H,(BX)=1200H,(DS)=212AH,(224A0H)

=0600H,(275B9H)=098AHo求使用以下寻址方式时的转移地址:

(1)段内直接寻址方式;

(2)使用BX的存放器寻址的段内间接寻址方式;

(3)使用BX的存放器相对寻址的段内间接寻址方式:

10.有一块120个字的存储区域,其起始地址为625A:234D,写出这个存储区域首末单元的物理地址。

11.两个十六进制数782511和5A1FH分别相加和相减后,求运算结果及各标志位的值。

第三章指令系统和寻址方式

习题三

一.选择题

1.指令ADDCX,55H[BP]的源操作数的寻址方式是()。

(A)存放器寻址(B)直接寻址(C)存放器间接寻址(D)存放器相对寻址

2.设(SS)=330011,(SP)=1140H,在堆栈中压入5个字数据后,又弹出两个字数据,那么(SP)=()。

(A)113AH(B)114AH(C)1144H(D)1140H

3.假设SF0053H,BP=0054H,执行SUBSLBP后,那么()。

(A)CF=0,0F=0(B)CF=0,0F=l(C)CF=1,0F=0(D)CF=1,OF=1

4.(BP)=01OOH,(DS)=700011,(SS)=800011,(80100H)=24H,(80101H)=5AH,(701OOH)=01H,

(70101H)=02H,指令MOVBX,[BP]执行后,(BX)=()。

(A)0102H(B)0201H(C)245AH(D)5A24H

5.实模式下80486CPU对指令的寻址由()决定。

(A)CS,IP(B)DS,IP(0SS,IP(D)ES,IP

6.使用80486汇编语言的伪操作指令定义:VALDB2DUP(1,2,3DUP⑶,2DUP(1,0))那

么在VAL存储区内前十个字节单元的数据是()。

(A)1,2,3,3,2,1,0,1,2,3(B)1,2,3,3,3,3,2,1,0,1

(C)2,1,2,3,3,2,1,0(D)1,2,3,3,3,1,0,1,0,1

7.以下四条指令都可用来使累加器清〃0〃,但其中不能清〃进位〃位的是()。

(A)XORAL,AL(B)ANDAL,0(C)MOVAL,0(D)SUBAL,AL

8.假设(AX)=96H,(BX)=65H,依次执行ADDAX,BX指令和DAA指令后,(AL)=()。

(A)OFBH(B)01H(C)61H(D)OBH

9.以下能使CF标志置1的指令是(),

(A)CMC(B)CLC(C)STC(D)CLD

10.MOVAX,[BP+SI]隐含使用的段存放器是()。

(A)CS(B)DS(C)ES(D)SS

11.设AL=7FH,要使AL=80H,应使用以下哪一条指令()°

(A)ANDAL,8011(B)ORAL,80H(C)XORAL,80H(D)NOTAL

12.在执行十进制调整指令DAA,DAS之前必须将结果存放于()中。

(A)AX(B)AH(C)AL(D)BL

13.以下指令执行后影响标志位的是()。

(A)MOV(B)PUSH(C)ADD(D)XCHG

14.唯一能对应存储单元的地址是()。

(A)物理地址(B)端口地址(C)有效地址(D)逻辑地址

15.计算机能直接执行的语言是()。

(A)机器语言(B)汇编语言(C)高级语言(D)程序设计语言

16.需采用先进后出原那么操作的存储区是()。

(A)存放器组(B)地址缓冲器(C)数据存放器(D)堆栈区

17.存放器SP用于对()的操作。

(A)空闲单元(B)堆栈单元(C)数据单元(D)指令单元

18.假设(BX)=1000H,(DS)=2000H,(21000H)=12H,(21001H)=34H,执行LEASL[BX]指令后,

SI存放器的内容是()。

(A)1234H(B)3412H(C)1000H(D)OOIOH

19.假设(AL)=80H,执行NEGAL指令后,CF和OF标志位的状态分别为()。

(A)0和0(B)0和1(C)1和0(D)1和1

20.假设要完成(AX)*7/2运算,那么在以下四条指令之后添加()指令。MOVBX,AX;MOVCL,

3;SALAX,CL;SUBAX,BX()。

(A)RORAX,1(B)SALAX,1(C)SARAX,1(D)DIVAX,2

21.在保护模式下,代码段的段基址存在于()中。

(A)段选择符(B)指令指针存放器(C)段存放器(D)段描述符

22.查表指令XLAT规定,待查表的首址应存入()中。

(A)BP(B)SI(C)DI(D)BX

23.将要取的某一条指令的偏移地址由()提供。

(A)SI(B)BP(C)SP(D)IP

24.存放器间接寻址方式中,操作数在()中。

(A)通用存放器(B)堆栈(C)主存单元(D)段存放器

25.运算型指令的寻址和转移型指令的寻址,其不同点在于()。

(A)前者取操作数,后者决定程序的转移地址

(B)后者取操作数,前者决定程序的转移地址

(0两者都是取操作数(D)两者都是决定程序的转移地址

26.JMPWORDPTR[DI]是()。

(A)段内间接转移(B)段间间接转移(C)段内直接转移(D)段间直接转移

27.INC指令不影响()标志。

(A)OF(B)CF(C)SF(D)ZF

28.逻辑移位指令SHL用于()。

(A)带符号数乘2(B)带符号数除2(C)无符号数乘2(D)无符号数除2

29.算术移位指令SAR用于()。

(A)带符号数乘2(B)带符号数除2(C)无符号数乘2(D)无符号数除2

30.以下指令中,有语法错误的选项是()。

(A)MOV[SI],AX(B)INAL,DX

(C)XORAX,1234H(D)OUT21011,AL

31.在以下伪指令中定义字变量的是().

(A)DI)(B)DW(C)DQ(D)DT

32.以下指令中,能使AL的内容固定为偶数的是()。

(A)ADDAL,01H(B)ORAL,OFEH(C)ANDAL,OFEH(D)XORAL,OFEH

33.改变()存放器的值,可改变堆栈中栈顶元素的位置。

(A)BP(B)IP(C)SP(D)BX

34.加减类运算指令对标志位的状态()。

(A)有影响(B)局部影响(C)无影响(D)任意

35.当AH二()时,执行INT21H指令可在屏幕上显示一组字符。

(A)01H(B)02H(C)0911(D)OAH

36.VARDW1,2,$+2,5,6假设汇编时VAR分配的偏移地址是2023和,那么汇编后2023H

单元的内容是()。

(A)6H(B)14H(C)5H(D)16H

37.假设某数据段位于存储区68000H〜7FFFFH,那么该数据段的段基址是()。

(A)68000H(B)7FFFFH(C)6000H(D)6800H

38.SP的作用是用来指示()。

(A)栈顶元素的有效地址(B)下一条要执行指令的地址

(0下一条要取的指令的地址(D)栈底元素的有效地址

39.在数据传送指令执行过程中,不能直接与立即数进行传送的是0o

(A)通用存放器(B)段存放器(C)存储器(D)通用存放器和存储器

40.转移类指令对标志位的状态()。

(A)有影响(B)局部影响(C)无影响(D)随意

41.欲从存储单元取某操作数,可采用()。

(A)存放器寻址、存放器间接寻址(B)立即寻址、直接寻址

(0立即寻址、存放器间接寻址(D)存放器间接寻址、直接寻址

42.在指令MOVAX,0执行后,CPU状态标志位ZF的取值()。

(A)为0(B)为1(C)不确定(D)不改变

43.AL=1OO1OU1H,BL=00010101H,执行ADDAL,BL指令后,OF、SF、CF、ZF标志的状态为

()<.

(A)1、0、1、1(B)k1、0、0(C)0、0、1、1(D)0、1、0、1

44.以下指令中,错误的选项是()。

(A)MOVBX,OFFSETBUF(B)LEASI,BUF

(0LEADI,OFFSETBUF(D)MOVBP,SEGBUF

45.输入/输出指令对标志位的状态()。

(A)有影响(B)局部影响(C)无影响(D)任意

46.以下描述正确的选项是()。

(A)汇编语言仅由指令性语句组成

(B)汇编语言包括指令性语句和伪指令语句

(0指令性语句和伪指令语句的格式是完全相同的

(D)指令性语句和伪指令语句需经汇编程序翻译成机器代码后才能执行

47.以下指令中不属于逻辑运算指令的是()o

(A)XOR(B)CWD(C)NOT(D)OR

48.假定DX=10111001B,CL=3,CF=1,那么执行指令SHLDX,CL后,DX的值为()。

(A)005CH(B)0017H(C)1700H(D)05C8H

49.以下指令中不会改变指令指针存放器内容的是()。

(A)MOV(B)JMP(C)CALL(D)RET

50.伪指令ENDP告诉汇编程序()。

(A)宏定义结束(B)过程定义结束

(C)段定义结束(D)过程运行结束

51.利用DOS系统功能调用的9号(AH=9)功能,显示一个字符串,其入口参数应为()。

(A)DS:DX=字符串首地址(B)DS:DX=字符串末地址

(C)CS:DX二字符串首地址(D)CS:DX二字符串末地址

52.在以下伪指令中定义双字变量的是()。

(A)DB(B)DW(C)DD(D)DT

二、判断题

1.指令MOVAX,[BX]的源操作数是存放器寻址方式。

2.对堆栈区的操作必须遵循先进先出的原那么。

3.比拟两个带符号数的大小,可根据CF标志来判断。

4.逻辑操作符AND,OR,XOR和NOT,只能用于数字表达式。

5.不能给段存放器赋立即数。

6.OF位可用来表示有符号数的溢出。

7.无条件转移指令只能用于段内直接转移。

8.MOVAX,[BP]的源操作数的物理地址为16*(DS)+(BP)。

9.指令MOVDLOFFSET[BX][SI]是正确的。

10.指令MOVCS,BX是非法的。

11.指令NOTAX,BX是合法的。

12.MOV[BX][BP],AX是对的。

13.80486中对堆栈单元的存取操作是以字节为单位的。

14.JMP指令要影响标志位。

15.INC指令影响所有状态标志。

16.欲交换存放器SI,DI的内容,可用指令XCHGSI,DI实现。

17.CPU中的程序计数器IP中存放的是指令的逻辑地址。

18.两个符号相同的数相减不会产生溢出。

19.汇编程序就是汇编语言程序。

20.相对寻址中的位移量只能用16位表示。

21.CLD指令是MOVSB指令的使用条件之一。

22.段存放器间不能直接进行数据传送。

23.要把变量BUFF的有效地址送给BX,可用MOVBX,BUFF指令。

24.当对堆栈段的数据进行操作时,其操作数的有效地址可保存在BP中。

25.TEST指令属于逻辑运算指令。

26.CS和IP都不能作传送指令的目的操作数。

三、填空题

1.假设SS=5310H,SP=0E30H,其物理地址为()。

2.假设CH=07H,CL=08H,执行指令ADDCH,CL后,AF=(),CF=(),0F=(),PF=()。

3.指令由()和()两个字段构成。

4.条件转移指令JNE的测试条件是()。

5.假设用指针(BP)访问存储器,那么数据包含在()段中。

6.假设AX=1234H,SP=1000H,指令PUSHAX执行后AX=(),SP=()。

7.指令采用()寻址方式时操作数是在代码段中。

四、阅读程序

程序中数据定义如下:

DATA1DW?

DATA2DB32DUP(?)

DATA3DD?

COUNTEQUS-DATA1

此时COUNT的值是()。

2.分析以下程序段,说出其功能。MOVAX,1000H

MOVDS,AX

MOVES,AX

MOVSI,01OOH

MOVDI,0200H

MOVCX,50D

REPMOVSB

3.写出以下程序段的功能

MOVBX,2000H

MOVDS,BX

XORAL,AL

MOVCX,100

AGAIN:MOV[BX],AL

INCBX

LOOPAGAIN

4.写出以下程序段的功能

LEASI,BUFFER

LEADI,ARRAY

MOVCX,100

XORBL,BL

LP:CMP[SI],O1H

JNZLP1

INCBL

LP1:INCSI

LOOPLP

MOV[DI],BL

5.写出以下程序段的功能

MOVCX,16

MOVAX,N

MOVBH,0

LPO:SHLAX,1

JCLP

INCBH

LP:LOOPLPO

MOVSUM,BH

6.写出以下程序段的功能

MOVAL,N

ANDN,OFH

MOVBL,N

SHRAL,4

MOVBH,AL

7.执行以下程序段后,AX二?

MOVAX,0702H

MOVBH,09H

AAD

DIVBH

8.下面程序段执行后AL二?

ABCDW2152H,3416II,5731H,468411

MOVBX,OFFSETABC

MOVAL,3

XLAT

9.执行下面的程序段后AX二?

MOVCX,5

MOVAX,50

NEXT:SUBAX,CX

LOOPNEXT

HLT

10.执行下面的程序段后AX=?

TABDW1,2,3,4,5,6

ENTRYEQU6

MOVBX,OFFSETTAB

ADDBX,ENTRY

MOVAX,[BX]

11.执行下面程序段后AX=

ARRAYDW1,2,3,4,5,6,7,8,9,10

COUNTEQU$-ARRAY

XORAX,AX

MOVCX,COUNT

MOVSI,OFFSETARRAY

NEXT:ADDAX,[SI]

INCSI

LOOPNEXT

12.写出以下程序段的功能

MOVAH,1

INT21H

ANDAL,OFH

MOVBL,AL

MOVAH,1

INT21H

SHLAL,4

ANDAL,BL

将从键盘接受到的两个字符拼在一起

13.执行以下程序段后

NDB07H

XORBH,BH

MOVBL,N

RCLBL,1

ADDBH,BL

XORBH,OFFH

HLT

存放器BH的值是,存放器BL的值是。

14.分析以下程序段

MOVAL,N

XORAH,AH

MOVCL,4

DIVCL

当N=3CH时,程序执行完后AX二

15.程序段如下:

CLC

MOVAL,6

MOVBL,9

ADDAL,BL

MOVBL,AL

DAA

执行上面程序段后,AL=,AF=,BL=

16.执行以下指令后

TABLEDB19H,55H,9CH

LEABX,TABLE

MOVAL,[BX]

XORAL,89H

MOV[BX],AL

存放器AL的值是

17.分析以下程序段,说明该程序段执行何种功能。

MOVCX,10

MOVDL,30H

NEXT1:MOVAH,2

INT21H

INCDL

LOOPNEXT1

18.执行以下指令后

MOVAX,1245H

MOVBX,5689H

ADDAL,BL

MOVCL,AL

MOVAL,AU

ADCAL,BH

DAA

存放器AL的值是,存放器CL的值是

19.分析以下程序段:

MOVAL,N

XORAH,AH

MOVBL,16

DIVBL

当N=57H时,程序执行完后AX=?

20.在下面程序的括号中分别填入如下指令:

①LOOPXII②LOOPNEXH③LOOPEXII

问在这三种情况下,当程序执行完后,AX、BX、CX、DX四个存放器中的内容分别是什么?

START:MOVAX,04

MOVBX,02

MOVCX,03

MOVDX,05

XH:INCAX

ADDBX,AX

SHRDX,1

()

HLT

21.阅读程序,请说出该程序的功能是什么?

MOVAX,DATA

MOVDS,AX

LEASI,BUFFER

XORBL,BL

MOVCX,100

AGAIN:MOVAL,[SI]

TESTAL,1

JNZNEXT

INCBL

NEXT:INCSI

LOOPAGAIN

HLT

22.从键盘上接收一字符,假设是"Y”转YES,是“N"转NO,否那么继续等待,到输入"Y”

或"N"为止。

程序段如下:

MOVAL,N

ANDAL,OFH

ADDAL,90H

DAA

ADCAL,40H

MOVRUT,AL

HLT

问:①假设加5,以下程序执行后AL二?②该程序段的功能是什么?

23.执行以下程序段后:

DATASEGMENT

DTILABLEWORD

DT2DB12H,34H

DATAENDS

MOVAL,DT2

MOVDX,DTI

存放器AL的值是①,存放器DX的值是②。

24.读以下程序,请说出该程序的功能是什么?

DATASEGMENT

SUMDW0

DATAENDS

STACKSEGMENT

DB200DUP(?)

STACKENDS

CODESEGMENT

ASSUMEDS:DATA,SS:STACK,CS:CODE

START:MOVAX,DATA

MOVDS,AX

MOVCX,50

MOVAX,0

MOVBX,1

NEXT:ADDAX,BX

INCBX

INCBX

DECCX

JNENEXT

MOVSUM,AX

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

25.设伪指令定义如下,请画出内存分配示意图。

BUFDB?

DW'AB'

DW'C'

DW1234H

DB'EF'

26.执行以下程序段后:

DATASEGMENT

DTIDW8A9BH

DT2DB7CH,6DH

DATAENDS

I

I

I

I

I

I

MOVAX,DTI

MOVBX,OFFSETDTI

MOVSI,OFFSETDT2

存放器BX的值是①,存放器SI的值是②。

27.执行以下指令后:

TABLEDB10H,33H,41H

MOVBX,OFFSETTABLE

MOVAL,[BX]

XORAL,80H

MOV[BX],AL

存放器AL的值是多少?

28.执行以下程序段后:

DATASEGMENT

N1DW3355H

N2DB23H,89H

DATAENDS

a

i

a

MOVAX,N1

MOVDI,OFFSETN1

MOVBP,OFFSETN2

存放器DI的值是多少?存放器BP的值是多少?

29.执行以下指令后:

DATDB10H,33H,41H

LEABX,DAT

MOVAX,SEGDAT

MOVES,AX

MOVAL,ES:[BX]

XORAL,80H

MOVES:[BX],AL

存放器AL的值是多少?

30.执行以下程序段后:

BUFDB01H

XORAL,AL

MOVAL,BUF

MOVBL,AL

SALAL,1

ADDAL,BL

XORAL,OFFH

HLT

存放器AL的值是多少?存放器BL的值是多少?

五.程序填空

1.以下程序是在键盘上输入120个字符,然后将输入反序后显示在屏幕上。请将程序填写完

整。

STACK1SEGMENT

STPDW120DUP(?)

STACK1ENDS

CODESEGMENT

ASSUMECS:CODE,SS:STACK1

START:MOVAX,STACK1

MOVSS,AX

MOVSP,SIZESTPMOVCX,120

L00P1:MOVAH,01H

INT21H

PUSHAX

()

MOVDL,OAH

MOVAH,02H

INT21H

MOVDL,ODH

INT21H

MOVCX,120

L00P2:()

MOVAH,02H

INT21H

LOOPL00P2

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

六、编写程序

1.在STR到STR+49单元中存放着一个字符串,试编写一个程序,测试字符串中是否存在数字,

如有,那么把DL的第五位置1,否那么将该位置0。

2.试编程实现,从键盘接收N个(NW60)8位二进制数,统计其中奇数的个数,并将结果显

示在屏幕上。

3.有100字节的数据块存放在以5C10H:2000H开始的存储区内,要求编写一个完整程序将数

据移动到以5C10H:2023H开始的存储区内。

4.数组A包含100个互不相等的整数,数组B包含150个互不相等的整数,试编程实现将数

组A和数组B都有的整数存放在数组C中。

5.在以BASE起始的表中存有一组字符,它以'回车’(0DII)结束。请编写程序:实现从该

表中查找关键字KEY(设关键字KEY在AL中),并将找到的第一个关键字偏离表首的位置存放

在存放器DX中,假设无此关键字,DX返回值为一1。

6.编写一个中断程序,实现人机对话。要求执行程序时,显示'WHATISYOURNAME?',在

回车换行后,接收键盘输入信息,并显示。

7.编写程序找出BUF数据区中50个带符号数的最大值和最小值,并分别存入MAX和MIN单元。

8.试编程实现从键盘接收N个(NW50)8位二进制数,统计偶数的个数及偶数之和,并将统

计的个数以十进制方式显示在屏幕上。

9.以STRING起始的字符串的最大长度为80个字符,字符串的结束用字符$表示。编写程序在

该字符串中查找是否有空格符(ASCII码为20H),假设有就将第一个空格字符串中的位置(00H〜

4FII)存入POST单元;假设无空格那么将T存入POST。

10.BUFFER字节数组中存有一组无序列字节数数据,列的长度表示在BUFFER的第一个字节中

KEY中为一个字节数据,编写程序在BUFFER中查找有无KEY,假设有就结束,假设没有就将KEY

参加到BUFFER中去,并修改列的长度。

11.利用移位及数据循环指令完成将DHAL中的16位二进制乘以8的运算,结果仍存入DHAL

中。

12.分别从键盘上接收两长度相等的组数A和B,试完成两数组的求和任务,将结果存放在数

组C中,并显示在屏幕上。

13.编写程序,将键盘输入的小写字母用大写字母显示出来。

14.要求从键盘接收一个十进制数字,然后找出它的前导数字和后继数字,并按相反的顺序显

示输出。

15.设在变量X、Y、Z中存放有三个数,假设三个数都不为0,那么求出三个数之和存入U中,

假设有一个为0,那么将其它两个单元也清零,编写此程序。

16.求出首地址为DATA的M个字节的无符号数组中最小奇数,并把它存放于DL中。

第四章汇编语言程序设计

习题四

例4-1写出以下变量的内容:

VARIDB125,125/3,-1,,-1011

VAR2DW125,125/3,-1,,-10H

VAR3DB‘AB','CD'

VAR4DW‘AB','CD'

解:按十六进制数依次写出各个变量的内容为:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论