第一章微型计算机的基础知识1-1 将下列十进制数转换为二进制数、十六进制数。
(1)110 (2)1 039 (3)0.75 (4)0.156 251-2 将下列十进制数转换为BCD 码。
(1)129 (2)5 678 (3)0.984 (4)93.7451-3 将下列二进制数转换为十进制数、十六进制数。
(1)10101010 (2)10000000 (3)11000011.01 (4)01111110 1-4 将下列十六进制数转换为二进制数、十进制数。
(1)8E6H (2)0A42H (3)7E.C5H (4) 0F19.1DH1-5 将下列二进制数转换为BCD 码。
(1)1011011.101 (2)1010110.0011-6 将下列BCD 码转换为二进制数。
(1)(0010 0111 0011)BCD (2)(1001 0111.0010 0101)BCD1-7 完成下列二进制数的运算。
(1)1001.11+11.11 (2)1101.01-0110.11 (3)1000.011-1001.101 (4)1111+11011-8 完成下列十六进制数的运算。
(1)6AH+0A6H (2)0AB1FH+0EFCH (3)12ADH-1DEH (4)117H-0ABH1-9 已知X=01H,Y=0FFH ,在下面的情况下比较两数的大小。
(1)无符号数 (2)符号数 (均为补码)1-10 计算下列各表达式。
(1)101+‘A’+01101001B+0D5H+57Q(2)127.8125+10111101.101+375.63Q+1FC.8AH1-11 写出下列字符串的ASCII 码。
(1)HELLO (2)A8=1-12 若加上偶校验,下面字符的ASCII码是什么?加上奇校验呢?(1)E (2)61-13 用8位和16位二进制数,分别求下列十进制数的原码、反码、补码。
(1)-38 (2)125 (3)-128 (4)871-14 用8位和16位二进制数,分别写出数字0的原码、反码、补码。
1-15 已知补码如下,分别求出真值、原码、反码。
(1)[X]补=81H (2)[X]补=800H (3)[X]补=79H (4)[X]补=FFFEH1-16 写出下列补码的真值。
(1)[X]补=1000 0000 0000 0000 (2)[X]补=1111 1111 1111 1111(3)[X]补=0111 1111 1111 1111 (4)[X]补=0101 0101 0101 01011-17 8位二进制补码、原码、反码的范围各是什么?16位的呢?1-18 用8位补码完成X+Y运算,判断结果是否溢出,并说明原因。
(1)X=80;Y=-65 (2)X=-120;Y=65 (3)X=-87;Y=-45(4)X=-10;Y=-1151-19 用压缩BCD码计算下列各式,并进行调整。
(1)27+11 (2)37+29 (3)62+57 (4)98+721-20 将下列十进制数表示成二进制浮点规格化数,要求:不包括符号位,尾数取6位,阶码取4位。
若尾数、阶码都用原码或都用补码表示,分别写出其浮点数形式。
(1)17.5 (2)-75.5第二章微处理器结构2-1 什么是微机的系统总线?微机的总线结构为它带来了哪些好处?一般将系统总线分为哪三种类型?2-2 简述微处理器、微型计算机的发展经历了几代?各代的典型产品是什么?2-3 8086/8088微处理器由哪两大部分组成?各部分的功能是什么?这种结构与8位CPU相比,为什么能提高其性能?2-4 8086/8088 CPU内部有哪些寄存器?其主要作用是什么?2-5 以8086/8088为CPU组成微机系统时,为什么要用地址锁存器和数据放大器?它们的主要功能是什么?2-6 8086/8088 CPU中有哪些标志位?试述它们的含义及作用。
2-7 两个十六进制数7825H和5A1FH分别相加和相减后,求运算结果及各标志位的值。
2-8 简述8086/8088 CPU最大模式、最小模式,其关键区别是什么?2-9 8086在最小模式下,访问存储器,哪些信号有效?访问I/O端口,哪些信号有效?2-10 解释时钟周期、总线周期及指令周期。
一个基本的总线周期包括几个时钟周期?2-11 试画出在最小模式下,8086 CPU读、写总线周期时序图。
2-12 8086与8088相比有哪些不同?8086引脚BHE的作用是什么?其存储器组织为什么要由偶存储体和奇存储体组成?2-13 在最小模式下,8086的哪些引脚是分时复用的?哪些信号需要由系统进行锁存?2-14 8086/8088内指令队列的作用是什么?其各自长度为多少?8086 CPU复位后,有哪些特征?8086系统如何找启动程序?2-15 8086/8088 CPU为什么对存储器采用分段技术?段的起始地址有何规定?2-16 若有3种微处理器的地址引脚数分别为8条、16条、24条,试问这3种微处理器分别能寻址多少字节的存储单元?2-17 解释逻辑地址、物理地址、段地址及偏移地址,物理地址是如何求得的?2-18 段地址和偏移地址为1000:117AH的存储单元的物理地址是什么?而1109:00EAH的存储单元的物理地址又是什么?这说明什么问题?2-19 若某条指令执行前,CS=0A7B0H,IP=2B50H,求该条指令存放第一个字节单元的物理地址。
2-20 有一100个字的存储区域,其起始地址为6250:2300H。
写出这个存储区域首末单元的物理地址。
2-21 在存储器中存放的数据如题2-21图所示。
试读出123D4H和123D6H字节单元的内容是什么?读出123D4H和123D6H字单元的内容是什么?题2-21图2-22 如果从存储器的10000H地址开始分配段区,要求代码段占用4 K字节空间,数据段占用2 K字节空间、堆栈段占用512个字节空间。
按代码段、数据段和堆栈段的顺序连续分段,试画出存储器分段地址分配示意图,指出CS、DS、SS各段寄存器内容是什么? 2-23 解释什么是规则字、非规则字,8086 CPU对它们的存取各需要几个总线周期?第三章指令系统3-1 指出下列指令的寻址方式。
(1)MOV BX,2000H (2)MOV BX,[2000H](3)MOV [BP],CX (4)MOV AL,[BX+SI+100H](5)MOV DX,[BX+DI] (6)MOV AX,CX(7)POP AX (8)MUL BL(9)IN AL,80H (10)OUT DX,AX(11)JMP SI (12)DEC WORD PTR [DI+1200H]3-2 指出下列指令中存储器操作数实际地址的计算公式。
(1)ADD AL,[DI] (2)SHR BYTE PTR [BP+SI](3)MOV CL,10[BX] (4)SUB ES:[BX+SI+10H],BL(5)OR AL,[SI-80H] (6)PUSH AX(7)MOV AX,[2020H] (8)JMP DWORD PTR ES:[SI]3-3 指出下列指令的错误。
(1)MOV AL,BX (2)MOV CS,AX(3)ADD AX,IP (4)MOV 50H,AL(5)MUL 12H (6)MOV [1000H],[SI](7)CMP [DI],0 (8)OUT 80H,CL(9)MOV ES,1200H (10)ROL AH,3(11)ADD AX,[CX] (12)PUSH 1810H3-4 假设DS=1000H,BX=2A80H,CX=3142H,SI=50H,[10050H]=3BH,[10051H]=86H,[11200H]=7AH,[11201H]=64H,[12A80H]=95H,[12A81H]=0C4H,[12AD0H]=0A3H,[13CD0H]=61H,在以下各题括号中分别填入指令执行后的结果。
(1)MOV AX,1200HAX=( )(2)MOV AX,[1200H]AX=( )(3)ADD [SI],CX(10050H)=( ),(10051H)=( ),ZF=( ),SF=( ),CF=( ),OF=( )(4)OR BYTE PTR [BX+SI],54H(12AD0H)=( ),CF=( ),OF=( )(5)MOV [BX+150H],CH(12BD0H)=( ),CH=( )(6)SUB BH,1200H[BX][SI]BH=( ),ZF=( ),SF=( ),CF=( ),OF=( )(7)ROL WORD PTR [BX],1[12A80H]=( ),[12A81H]=( ),CF=( )3-5 写出以BUF为首地址字数组中的第五个字送到寄存器CX的指令序列,要求分别使用以下几种寻址方式:(1)以BX的寄存器间接寻址。
(2)以BX的相对寄存器寻址。
(3)以BX、SI的基址变址寻址。
3-6 假设SP=1010H,AX=1357H,BX=2468H,请问:下列程序段执行后,SP=?AX=?BX=?PUSH AXPUSH BXPOP AX3-7 写出使AX=0的单条指令,尽量多写几条。
3-8 分析下面程序段,指出每条指令执行后寄存器的内容。
MOV AX,0ABCH AX=?DEC AX AX=?AND AX,0FFFH AX=?MOV CL,4 CL=?SAL AX,CL AX=? CL=?MOV CL,AL CL=?ADD CL,78H CL=?PUSH AX AX=?POP AX AX=?3-9 执行下面程序段后,AL=?BL=?CF=?MOV AL,BLNOT ALXOR AL,BLAND BL,AL3-10 设AX=0119H,执行下面程序段后,AX=?MOV CH,AHADD AL,AHDAAXCHG AL,CHADC AL,34HDAAMOV AH,ALMOV AL,CHHLT3-11 指令SUB AL,9与CMP AL,9这两条指令的区别是什么?若AL=8,分别执行上述两条指令后,SF=?CF=?ZF=?OF=?3-12 分别编写出实现下列各算式的程序段,其中A、B、C、D均为存放16位无符号数的单元符号地址。
若A、B、C、D均存放16位符号数的话,程序段如何改写?(1)W←D-A*C(2)W←((D+B)*A)/C(3)W←D/A+B(余数省略)3-13 检查CX中的D10位是否为“0”,写出完成该操作的指令。
3-14 写出一条使地址1000H中的内容与CF标志位同时清0的指令。
3-15 8086/8088采用什么途径改变IP和CS内容,哪些指令可达到这个目的? 3-16 假设指令JMP SHORT NEXT存在代码段的2100H、2101H单元中,它的相对量为(1)38H (2)0D8H,请写出每种相对量的转移地址是什么?写出计算过程。