微机部分课后练习题_第1页
微机部分课后练习题_第2页
微机部分课后练习题_第3页
微机部分课后练习题_第4页
微机部分课后练习题_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

第一章将下列十进制数转换为八进制和十六进制数:39,99,735,54.625,127,119。[解]39f47Qf27H; 99.735f123.5702Qf63.BC28H; 54.625^66.5Qf36.AH127f177Qf7FH; 119f167Qf77H将下列二进制数转换为十进制数:111101.101B,100101.11B, 10011001.001B, 1100110.011B 11011010.1101B[解]111101.101A61.625; 100101.11Bf37.75; 10011001.001Bf153.1251100110.011A102.375; 11011010.1101X218.8125完成下列转换:10110.10111B转换为十六进制数;34.97H转换为八进制数和十进制数;0BA.7FH转换为二进制数和八进制数;43.27Q转换为二进制数和十六进制数;[解](1)10110.10111A16.B8H;(2)34.97Hf64.456Qf52.59(3)0BA.7FHf10111010・01111111B*272.376Q(4)43.27Qf100011.010111Bf23.5CH设机器字长为8位,写出下列用真值表示的二进制数的原码、补码和反码:+0010101, +1111111 +1000000, -0010101, -1111111 -1000000[解]+0010101的原码、补码和反码均为00010101B;+1111111的原码、补码和反码均为01111111B;+1000000的原码、补码和反码均为01000000B;0010101的原码为10010101B,补码为11101011B,反码为11101010B;1111111的原码为11111111B,补码为10000001B,反码为10000000B;1000000的原码为11000000B,补码为11000000B,反码为10111111B,设机器字长为8位,最高位为符号位,用二进制补码运算法则对下列各式进行运算:17+7; (2)8+18; (3)9+(-7); (4)-26+6; (5)8-18;(6)(6)19-(-17);[解](1)17+7[17]补f00010001B+)[7]补f00001111B00011000Bf24(4)-26+6[-26]补f11100110B+)[6]补f00000110B11101100Bf[-20]补(7)-25-6;[-25]补f11100111B+)[-6]补f11111010B(7)-25-6; (8)87-15(2)8+18

[8]补f00001000B

+)[18]补f00010010B

00011010Bf26

(5)8-18

[8]补f00001000B

+)[-18]补f11101110B

11110110A[-10]补

(8)87-15

[87]补f01010111B +)[-15]补f11110001B(3)9+(-7)[9]补f00001001B+)[-7]补f11111001B00000010Bf2(6)19-(-17)[19]补f00010011B+)[-(-17)]补f00010001B00100100Bf361|11100001A[-31]补 1!01001000Bf72已知下列各数均为二进制补码:a=00110010B; b=01001010B; c=11101001B;d=10111010B。试求:(1)a+b;(2)a+c;(3)c+b;(4)c+d;(5)a—b;(6)c—a;(7)d—c;(8)a+d—c;(9)b+c—d;(10)d—c—a[解]a+b=00110010B+01001010B=01111100Ba+c=00110010B+11101001B=00011011Bc+b=11101001B+01001010B=00110011Bc+d=11101001B+10111010B=10100011Ba—b=a+[-b]补=00110010B+10110110B=11101000Bc—a=c+[-a]补=11101001B+11001110B=10110111Bd—c=d+[-c]补=10111010B+00010111B=11010001Ba+d—c=a+d+[-c]补=00110010B+10111010B+00010111B=00000011Bb+c—d=b+c+[-d]补=01001010B+11101001B+01000110B=11111010Bd—c—a=d+[-c]补+[-a]补=10111010B+00010111B+11001110B=10011111B将下列十进制数变为8421BCD码:8609; (2)5254; (3)2730; (4)1998[解](1)8609f8609H或1000,0110,0000,1001B5254f5254H或0101,0010,0101,0100B27302730H或0010,0111,0011,0000B1998f1998H或0001,1001,1001,1000B将下列8421BCD码表示成十进制数和二进制数:(1)01111001;(2)01010111;(3)10000011;(4)10011001[解](1)01111001f79f01001111B(2)01010111f57f00111001B(3)10000011f83f01010011B(4)10011001f99f01100011B第二章2-11画出下列各信息在8086系统存储器中的存储示意图,假设各信息存放的起始地址都为12340H。(1)常数123 (2)字符串AB$09(3)偏移地址2130H (4)逻辑地址1234H:5678H解:(1)常数123:123=7BH(2)字符串AB$09:AB$09的ASCII码为4142243039(3)偏移地址2130H:16位数据在内存中存放时,高8位存放在地址较大的单元,低8位放在地址较小的单元。

(4)逻辑地址1234H:5678H:32位的地址指针存放时,偏移地址存入地址较小的单元,段基值存入地址较大的单元。(17K1L12JL1IIl-,21I2J44H313。12JUII21(1)12310117812JL1IIS61234211131U2-15如果SS=2000H,SP=0100H,在从堆栈中弹出4个字节和压入10个字节后,SS和SP的值是多少?此时栈顶的物理地址是多少?答:ss的地址是不会变的还是2000HSP的地址相当于压入了6个字节SP=0100H-0006H=00FAH物理地址200FAH第三章3-2判别下列指令是否有错,并说明理由;有错的加以改正:(1)MOV[DI],[SI]错,MOV指令中src和dst不能同时为存贮器寻址,应借助寄存器为桥梁。改:MOVAL,[SI] 或:MOVAX,[SI]MOV[DI],AL MOV[DI],AX(2)MOVCS,AX错,CS不能做目的操作数。不能用CS和IP做dst,CS和IP的内容只能了解不能改变。(3)MUL-25错,-25为有符号数,使用IMUL指令,此外,乘法指令中不能采用立即寻址。乘数可以是R/M中的无符号数,但不能为立即数。改:MOVBL,-25IMULBL(4(4)MOV128,CL错,目的操作数不能用立即寻址。立即数不能做dst。(5)MOVDS,CS错,两个段寄存器之间不能直接进行数据传送。不允许在段R之间直接传送信息。改:MOVAX,CSMOVDS,AX(6)ADDAX,[SI][DI]错,SI和DI不能同时出现在一个操作数的寻址方式中。基址变址寻址中BX和BP为基址R,SI和DI为变址R。(7)PUSHFLAG错,将标志寄存器F的内容推入堆栈,用专门的指令:PUSHF(POPF)(8)MOVAX,[AX]错,寄存器间接寻址不能用AX寄存器。AX不能作为间址R。改:MOVAX,[BX](9)MOVAX,BYTEPTR[SI]错,操作数位数不匹配。MOV指令操作数的类型要匹配。改:MOVAX,WORDPTR[SI]或:MOVAL,BYTEPTR[SI](10)MOVCL,AX错,MOV指令操作数位数不匹配。改:MOVCX,AX或:MOVCL,AL(11)OUTCX,AL错,OUT指令中指令用DX提供端口地址。使用短格式I/O指令时,先将端口地址赋给DX,而且只能赋给DX。改:OUTDX,AL(12)MOVAX,DISP[BX][BP]错,同一操作数的寻址方式中不能同时出现BX和BP。基址变址寻址中的BX和BP为基址R,SI和DI为变址R。(13)INAL,DX 正确。(14)LEABX,4[BX] 正确。(15)SARAX,5错,移位次数不为1,不能直接在指令中写出。移位一次的在指令中直接给出,移位n次的。需预先将n送入CL中。改:MOVCL,5SARAX,CL3-3假设X和X+2单元的内容为双精度数P:Y和Y+2单元的内容为双精度数Q(X、Y为低位字)。下列程序段使当2P>Q时,AX=2;否则AX=1。请把程序段填写完整。解: 若P、Q为有符号数: MOVDX,X+2TOC\o"1-5"\h\zMOV AX,XADD AX,XADC DX,X+2CMP DX,Y+2(JG )L2(_JL_)L1CMP AX,Y(JG )L2L1: MOV AX,1JMP EXITL2: MOVAX,2EXIT:HLT若P、Q为无符号数: MOV DX,X+2MOV AX,XADD AX,XADC DX,X+2CMP DX,Y+2(JA)L2

(JB)L1

CMPAX,Y

(JA)L2

L1: MOVAX,1JMPEXITL2: MOVAX,2EXIT:HLT3-5写出下列程序段完成的数学计算公式,并画出数据存放的示意图。MOVAX,XMOVDX,X+2ADDAX,YADCDX,Y+2SUBAX,ZSBBDX,Z+2MOVW,AXMOVW+2,DX答:完成的数学计算公式:X+Y-ZfW(X、Y、Z、W都是双字变量)3-6设有100个字节数据(补码),存放在数据段中EA=2000H开始的存储区内,以下程序段应能从该数据区中找出最大的一个数并存入同一数据段EA=2100H的单元中,请完成该程序(在空白处填入适当的语句)解:空白处填入适当的语句)解:MAX: MOVMOVMOVL1:INCCMPJGEMOVL2: DECJNZMOVBX,2000HAL,[BX]CX,0063H/99BXAL,[BX]L2 ;(此处用JG也可以)AL,[BX]CXL1I2100H],AL3-8设AX=4235H,BX=06FAH,CX=0143H,DX=3105H,CF=1。下列每条指令执行后的结果是什么?CF、ZF、OF等标志位的值各等于多少?解:(1)MOV(2)ADD(3)ADC(4)SUB(5)DEC(6)NEG⑺INC(8)MUL(9)DIVAX,BX;AL,DH;BX,CX;AX,2710H;BX解:(1)MOV(2)ADD(3)ADC(4)SUB(5)DEC(6)NEG⑺INC(8)MUL(9)DIVAX,BX;AL,DH;BX,CX;AX,2710H;BX;CX;BL;BX;CL。CF2FQF②(AL)W6H@(BX)=0831H@(BX)=06F9H1不影响不影响不影响1不影响珥求下列每条指令执行后的结果是什么?3-12已知AX=25O8H,BX=0F36H,C=0004H(DX=1864珥求下列每条指令执行后的结果是什么?标志位CF等于什么?解:(1)ANDAH,CLAH=04H1A\国《桔1CF=O(2)BL=36HCF=OORNOTXORTESTCMP标志位CF等于什么?解:(1)ANDAH,CLAH=04H1A\国《桔1CF=O(2)BL=36HCF=OORNOTXORTESTCMP⑺SHRSARSHLSALRCLRORBL,30HAXCX,0FFF0HDH,OFHCX,00HDX,CLAL,1BH,CLAX,1BX,1DX,CLAX=JAFTHCF不受影响寄存器值不变CF=ODX=0186HCF=OBH=OFOHCF=Q(11)BX=1E6CHCF=O⑷CX=OFFF4HC40(6)寄存器值不变CF=O⑻AL=04HCF=O(10)AX=4A10HCF^O(12)DXM1R6HCF=O3-16在如下列程序段的括号中分别填入以下指令:(1)LOOP NEXT;(2)LOOPE NEXT;(3)LOOPNE NEXTo试说明在这三种情况下,下列程序段执行完后,AX、BX、CX、DX寄存器的内容分别是什么。START:MOVAX,01HMOVBX,02HMOVDX,03HMOVCX,04HNEXT:INCAXADDBX,AXSHRDX,1()解:AXBKCXDX填LOOP510H00填LOOPE24311填LOOPNE3720第四章4-1下边的程序是实现AX+AL*12的操作,请判断其中语句的正误并改正。XOR AX,AXSAL AX,2MOV BX,AXSAL AX,1ADC AX,BX解:XOR AH,AH;对AX的高八位清零。MOVCL,2SALAX,CLMOVBX,AXSALAX,1ADCAX,BX4-2对于给定的符号定义,指出下列指令的错误,并说明原因。AEQU505BDB?CDB64H(1)MOVA,AX⑵MOVB,AXMOVAX,BCMPC,AX⑸CMPA,C(6)CMPAX,C解:ii)A是符号常量,不能做目标操作数地址:⑵类型不匹配;(J)类型不匹配;⑷类型不匹配;⑸U标数不能用立即数;")格苴不匹配,C是字节类型,而AX是字类型I类型不匹配43端问下列物指令在存储区中分别为各变量分配多少字节?VRIDW10VK2DW6DUP⑶碗即VK3DI>J()DUP(?JVR4DBZDLIP;?^DUP(O))W:为VRI分配两个字节;为VR2分配十六个字节.为VR3分配四十个字节;为VR4分配十八个字节占44对丁给定的效批定义,变量R1和R2的心是多少?[1)A1DB

温馨提示

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

评论

0/150

提交评论