微机原理课后习题答案

更新时间:2023-12-02 03:35:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第一章

1 计算机中常用的计数制有:二进制 八进制 十进制 十六进制 2 机器码:数码化了的带符号数。 真值: 机器数代表的真实的数值。 3 完成下列数制的转换: 1010 0110 B =A6H=166D 0.11B=0.75D

253.25=fd.4H=1111 1101.01B

101 1011.101B=5B.AH=(1001 0001 .0110 0010 0101)BCD

4 8位和16位二进制的原码、补码、反码可表示的数的范围分别是多少?

8 位二进制:原码、反码 -127---+127 补码 -128---+127

16 位二进制:原码、反码 -32767---+32767 补码 -32768---+32767 5 写出下列真值对应的原码和补码形式 (2)_ x=-1000 111B

[x]原=11000111B [x]补=10111001B (3) [x]原=[x]补=01001001B 6 符号数10110101B的反码?补码?

x=10110101 B [x]反=1100 1010B [x]补=1100 1011B 7 已知X和Y的真值,求[X+Y]的补码? (2) 0010 0011B

备注:此题要严格按照公式的过程来做,即[X+Y]补=[X] 补+[Y]补 10

若给字符4和9的ASCII码加奇校验,应是多少? 对4 奇 0对9奇1

11

若给字符4和9的ASCII码加偶校验,应是多少? 对4偶1对9偶 0

第二章

11 、总线周期中,什么情况下要插入Tw等待周期?插入Tw等待周期的个数,取决于什么因素? 答:所谓总线周期是指CPU进行一次存储器或输入输出读写操作所花的时间。一般情况下一个总线周期由4个时钟周期组成,如果存储器或外设没有准备好,则使READY 为低电平。CPU在T3周期采样READY信号,若其为低,则CPU自动插入等待周期Tw,直到RDADY信号变为高电平,CPU则脱离等待状态,进入T4,完成数据传送。

13、在8086、8088CPU中,标志寄存器包含哪些标志位:课本page 49 15 、8086、8088系统中,存储器为什么要分段?课本P46最后一段。

一个段最大64K,最小0。

16、在8086、8088CPU中,物理地址是每个存储单元实际的20位地址,而逻辑地址表示方法是,段地址:偏移地址

逻辑地址为1F00H:38A0H,物理地址为 PA=228A0 H。

19、若CS=8000H,则当前代码段可寻址的存储空间范围为:80000H-----8FFFFH 第三章

2、设(DS)=6000H,(ES)=2000H,(SS)=1500H,(SI)=00A0H,(BX)=0800H,(BP)=1200H,数据变量VAR为0500H. 1 寄存器寻址

2立即寻址 3直接寻址 60050H

4基址变址相对寻址 608F0H 5立即寻址 ,执行完指令后AL=42H 6寄存器间接寻址20800H 7寄存器间接寻址16200H 8寄存器相对寻址 60820H

备注:当采用存储器寻址方式时,如果有间址寄存器[SI],则默认在堆栈段,与SS搭配使用,否则默认在数据段,与DS搭配使用。

4、 指令MOV BX, 5[BX]:完成将数据段中有效地址为BX+5和BX+6的存储单元的内容送入BX中

指令LEA BX, 5[BX]:是将数据段中某存储单元的有效地址BX+5放到BX 5、(1)(SP)=22FEH (2) (SP)=22FEH (AX)=1234H (BX)=1234H 6

1 操作数类型不匹配 2立即数不可做目的操作数 3源操作数有两个变址寄存器

4两个存储单元之间不能直接传送数据

5操作数类型不匹配,8位无符号数的范围是0-255 6 寄存器寻址方式没有段超越形式。将ES:去掉 7 段内间接转移,操作数应为16位 8 当端口地址大于8位时,应放到DX中 9 正确

10乘法指令中立即数不可做源操作数 7、 AF=SF=OF=1 CF=ZF=PF=0 10、 (1) MOV AX,0000H

AND AX,0000H XOR AX, AX SUB AX, AX

(2) MOV CL,4

ROL/R BL,CL (3) AND CX,0F777H (4) AND DX,0101H CMP DX,0101H JZ YES ………. YES:

13、将+46和-38分别乘以2

MOV BL, +46 MOV BH, -38 MOV AL, 2 IMUL BL IMUL BH

或:MOV BL, +46

MOV BH, -38 SAL BL, 1 SAL BH, 1 将+46和-38分别除以2

MOV AX, +46 MOV BL, 2 IDIV BL MOV AX, -38 MOV BL, 2 IDIV BL 或:MOV BL, +46

MOV BH, -38 SAR BL, 1 SAR BH, 1

14 、

1)将AL的内容60H输出到地址为03F8H的端口中 2)将地址为48H的端口内容送到AL中

3)将AX寄存器的内容8060H输出到地址为03F8H和03F9H的端口中

4)将地址为48H端口的内容送到AL中,将地址为49H端口的内容送到AH中

5)将AX寄存器的内容8060H输出到地址为84H和85H的端口中

15、

LEA SI, BUFFER MOV CX, 200 XOR BL, BL AGAIN: MOV AL,[SI] CMP AL,0 JNZ NEXT INC BL NEXT: INC SI LOOP AGAIN 第四章 1

DATA DB 11H,22H,33H,44H,55H,66H,77H,88H DATA1 DW 2211H,4433H,6655H,8877H DATA2 DD 44332211H,88776655H 2

将DATA1所指的内存单元的内容送入AL中, (AL)=10H 将DATA2的有效地址送到BX中, (BX)=0003H

将STRING的首地址与DI的内容相加,(DI)=(DI)+0017H 3

DATA SEGMENT MEM1 DD 11223344H MEM2 DD 55667788H SUM DD ? DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA START: MOV AX, DATA

MOV DS, AX LEA SI, MEM1 LEA DI, MEM2 LEA BX, SUM CLC MOV CL, 4

NEXT: MOV AL, [SI]

ADC AL, [DI]

MOV [BX], AL INC SI INC DI INC BX LOOP NEXT MOV AH, 4CH INT 21H

CODE ENDS END START 4、

CODE SEGMENT

ASSUME CS: CODE

START: TEST AL, 10H JZ LABEL_Y … … LABEL_Y … …

MOV AH,4CH

INT 21H CODE ENDS

END START 6

DATA SEGMENT

DATA1 DB ‘HELLO!GOOD MORNING!’ DATA2 DB 20 DUP (?) DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA,ES:DATA

START: MOV AX,DATA

MOV DS,AX

MOV ES,AX

LEA SI, DATA1

LEA DI, DATA2

CLD

本文来源:https://www.bwwdw.com/article/vfvt.html

Top