微机原理期中考试试卷及答案
华南农业大学珠江学院期中考试试卷
学年度学期
考试年级:__2008__级 考试类型:(闭卷)考试时间: 120 分钟 学号 姓名 年级专业
5小题,每小题2分,共10分)
在每小题列出的四个备选项中只有一个是最符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.【 B. 】,世界上第一台电子数字计算机NEIAC在美国宾夕法尼亚大学研制成功。从此计算机发展随着其主要电子部件的演变经历了电子管、晶体管、中小规模集成电路、大规模集成电路和超大规模集成电路等5个时代。 A.1966年7月 B. 1946年2月 C. 1935年1月 D. 1945年8月
2.微处理器也称为中央处理器CPU,是微型计算机的核心部件,它主要由三个部件组成,下列四个选项中,不是这CPU主要组成部件的是【 D 】 A. 运算器 B. 控制器 C. 寄存器组 D. 外部设备 3. 系统总线是CPU与其它部件之间传送数据、地址和控制信息的公共通道,下列不是系统总线的符号是【 D 】 A. AB B. DB C. CB D. BD 4. 下列软件不属于系统软件的是【 B 】 A. 操作系统 B. 飞信软件 C. 监控程序 D. 编译程序
5. 对于8086微处理器的两个逻辑单元EU和BIU,下列说法错误的是【 D 】 A. EU和BIU是并行工作的,互相独立工作。 B. BIU的主要功能是取指、读操作数 和写结果
C. BIU中的指令队列有2个或2个以上字节为空时,BIU自动启动总线周期,取指填充指令队列。直至队列满,进入空闲状态。
D. 当BIU接到EU的总线请求,若正忙,马上放弃执行当前的总线周期,响应EU请求。
6.下面的四个选择,其中错误的一个是【 B 】 A. 符号定义伪指令EQU不允许对同一符号重复赋值
B. 变量具备两种类型:NEAR FAR
C. 伪指令“ = ”它可以对同一个名字重复定义
D. 伪指令是发给我们汇编程序的命令,本身不产生与之相应的目标代码。
7.若给定ARR=0010H, (SI)=0020H, (DS)=2000H, (BX)=6AE0H, (20030H)=0080H, (20032H)=40000H,则执行指令LDS BX,ARR[SI]后,(BX)=?(DS)=?【 C 】
A. (BX)=6AE0H (DS)=4000H C. (BX)=0080H (DS)=4000H A. OUT 43H , AL B. OUT 44H, BX C. IN AX, 3FH
D. MOV DX,33FH , OUT DX,AL
9.对于我们的特殊值1000 0000B,其中表达错误的一个是【 C 】 A. 对无符号数:(10000000)B=128 B. 在原码中定义为: -0 C. 在反码中定义为: -126 D. 在补码中定义为: -128
10.对于二进制数序列:1100 1000, 则其表示哪一个数的补码?正确的选项是【 C 】 A. 38H B. –28H C. –38H D. 28H
B. (BX)=0080H (DS)=2000H D. (BX)=0020H (DS)=2000H
8.下面输入输出指令中的四个选择,其中错误的一个是【 B 】
2分,共10分)
1.8086有( 20)根地址总线,所以可寻址的存储器空间为(1MB )。
2.( 逻辑地址 )为无符号的16位二进制数,是在程序中使用的地址,由段地址和偏移地址两部分组成。表示形式:段地址:偏移地址。
3.如果要测试AL中的带符号数是正还是负,在不影响AL中的内容的情况下,请写出指令表达式实现这个功能(TEST AL,80H )。
4.一般情况下,程序是按指令顺序逐条执行的,但实际上经常需要改变程序的执行流程,控制转移类指令用来改变程序执行的方向,即修改(CS)和(IP)的值。
5.变量A1和A2可以按照下面语句这样定义,已知M的ASCII码为4DH ,N的ASCII码为4EH,请说明两者在分配内存时不同点是()。
A1 DB ‘MN’, A2 DW ‘MN’,
10小题,每小题2分,共20分)
判断下列各题正误,正确的在题后括号内打“√”,错误的打“×”,并说明其正确或错误的理由。
(1)MOV DL, AX
错,寄存器寻址方式中,目的操作数与源操作数长度必须一致 (2)MOV 8650H, AX
错,目的操作数不可以是立即数 (3)MOV DS, 0200H
错,MOV指令不允许将立即数传入段寄存器 (4)MOV [BX], [1200H]
错, MOV指令的两个操作数不能同时为存储器 (5)MOV [BX+SI+3], IP
错, IP不能作为MOV指令的源操作数 (6)MOV AX, [BX][BP]
错,BX与BP不可以同时出现在源操作数当中 (7)MOV AL, ES:[BP] 对 (8)MOV AX, OFFSET 0A20H
错,OFFSET后面跟的应该是符号地址,再把符号地址的值作为操作数。 (9)MOV AL, OFFSET TABLE
错,TABLE的偏移地址是16位,目的与源长度不一致 (10)IN BL, 05H
错, BL不能作为IN指令的目的操作数,只能用AL或AX
10分,共60分)
1.已知[X]补码=1101 0010,求X的真值
解:因为补码11010010的符号位为“1”,可知它是一个负数,要求得其真值需再对其取补码,即:X=[[X]补]补=[11010010]补=-0101110=(-46)10
2. 某程序数据段中存放了两个字,1EE5H和2A8CH,已知DS=7850H,数据存放的偏移地址为3121H及285AH。试画图说明它们在存储器中的存
放情况。若要读取这个两个字,需要对存储器进行几次操作?
解:它们的物理地址分别是:78500H+3121H=7B621H,78500H+285AH=7AD5AH。 1EE5H的偏移地址是3121H,是奇地址,需要进行两次操作;2A8CH的偏移地址是285AH,是偶地址,需要一次操作。
3.下列变量各占多少字节? A1 DW 23H, 5876H A2 DB 3 DUP(?), 0AH, 0DH, ‘$’ A3 DD 5 DUP(1234H, 567890H) A4 DB 4 DUP(3 DUP(1, 2, ‘ABC’)) A5 DD 5*20H, 0E876H
解:
A1变量占4个字节; A2变量占6个字节;
A3变量占5×8=40个字节; A4变量占4×3×5=60个字节; A5变量占4×2=8个字节;
4.根据补码的计算规则:
补码的减法法规则:[X-Y]补=[X]补-[Y]补=[X]补+[-Y]补 假设X=+51,Y= +66,求[X-Y]补=?
解:由补码的减法运算规则知:
[X-Y]补=[X]补-[Y]补=[X]补+[-Y]补
X =(+51)10=(+0110011)2 ,[X]补=0011 0011 -Y=(-66)10=(-1000010)2 ,[-Y]补=1011 1110 求[X]补+[-Y]补: 0011 0011 +1011 1110
1111 0001
所以:[X-Y]补=1111 0001
5. 假设 DS=1000H, ES=2000H, SS=3500H,
SI=00A0H, DI=0024H, BX=0100H, BP=0200H, VAL=0030H ,
试指出源操作数的寻址方式,可以计算物理地址的,请计算出其物理地址PA。
(1)MOV AX, VAL 直接寻址方式,10030H
物理地址=DS×10H+VAL=10000H+0030H=10030H
(2)MOV AX, ES:[BX] 寄存器间接寻址,20100H
物理地址=ES×10H+BX=20000H+0100H=20100H
(3)MOV AX, [BX+10H] 寄存器相对寻址,10110H
物理地址=DS×10H+BX+10H=10000H+0100H+10H=10110H
(4)MOV AX, [BP] 寄存器间接寻址,35200H
物理地址=SS×10H+BP=35000H+0200H=35200H
(5)MOV AX, VAL[BX][DI] 相对基址变址寻址,10154H
物理地址=DS×10H+BX+DI+VAL
=10000H+0100H+0024H+0030H=10154H
6. 假设DS=2000H,CS=1200H,IP=1200H,BX=0300H, (20300H)=4800H,
(20302H)=00FFH。试确定下列转移指令的转移目标地址。
(1)JMP BX
段内寄存器间接转移,目的地址为1200H:0300H(或12300H)
(2)JMP [BX]
物理地址=DS×10H+BX=2000H×10H+0300H=20300H (20300H)=4800HIP
段内存储器间接转移,目的地址为1200H:4800H(或16800H)
(3)JMP DWORD PTR[BX]
物理地址=DS×10H+BX=2000H×10H+0300H=20300H (20300H)=4800HIP, (20302H)=00FFHCS
段间存储器间接转移,目的地址为00FFH:4800H(或057F0H)
7. 设AX、BX中保存有带符号数,CX、DX中保存无符号数,请写出实现以下功能的指令或程序段。
(1)若(CX)(BX),则转移到A2。 (3)若(CX)=0,则转移到A3。 (4)若AX中内容为负,则转移到A4
答: (1)若(CX)
JB A1
(2)若(AX)>(BX),则转移到A2,采用以下两条指令实现 CMP AX,BX; 将AX中数据与BX中的数据进行比较 JG A2
(3)若(CX)=0,则转移到A3,采用以下两条指令实现 CMP CX,0; 将CX中数据与0进行比较 JZ A3
(4)若AX中内容为负,则转移到A4,采用以下两条指令实现 CMP AX,0 ; 将AX中数据与0进行比较 JL A4
8.程序填空,每空1分。下面是一个多字节二进制数求和程序,请补充完整题中空白的地方。使整个程序完整。 DATA SEGMENT
BUFF1 DB 4FH,0B6H,7CH,34H,56H,1FH BUFF2 DB 13H,24H,57H,68H,0FDH,9AH SUM DB 6DUP(?) CONT DB 3 DATA ENDS
CODE SEGMENT
ASSUME CS :CODE,_DS:DATA______ START : MOV ,DATA
MOV DS, AX
MOV SI, MOV DI,_OFFSET BUFF2__ MOV BX,OFFSET SUM MOV CH,0 GOON: MOV AX,[SI] ADC AX,[DI] ADD SI, ADD DI, MOV [BX],AX ADD BX,2
__LOOP GOON____ MOV AH,4CH INT __21H____ CODE ENDS
END START
答卷第1页(共 x 页)