8086汇编语言习题解答

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8086/8088汇编语言习题解答

第一章

、试根据自己使用计算机的经历,列举几个必须使用或最好是使用汇编语言编制程序的事例。

、试完成下列数制间的转换

⑴、十进制数转换为8位二进制数

十进制:100 对应二进制:01100100B

十进制:56 对应二进制:00111000B

十进制:111 对应二进制:01101111B

十进制: 120 对应二进制:01111000B

十进制: 70 对应二进制:01000110B

⑵、8位二进制数(无符号数)转换为十进制数

二进制:01010101B 对应十进制:85

二进制:B 对应十进制:170

二进制:B 对应十进制:240

二进制:00001111B 对应十进制:15

⑶、十进制数转换为十六进制数

十进制:40 对应二进制:00101000B

十进制:80 对应二进制:01010000B

十进制:105 对应二进制:01101001B

十进制: 114 对应二进制:01101101B

十进制: 207 对应二进制:B

、试把下面用补码表示的二进制数转换为对应的十进制真值

二进制补码:01111000 对应的十进制值数真值:+120

二进制补码:对应的十进制值数真值:-39

二进制补码:对应的十进制值数真值:-127

二进制补码:对应的十进制值数真值:-120

二进制补码:00100111 对应的十进制值数真值:+39

二进制补码:对应的十进制值数真值:-16

、由键盘输入字符通常都是以该字符的ASCII码形式表示的。若现在从键盘上输入十六进制数0~F,那么应如何处理才能把十六进制转换为4位二进制数0000~1111.

答:将键盘输入的数0~F的ASCII码,每输入一个字符,减去30H后,再存入内存,这样就完成了把从键盘上输入的十六进制ASCII码转换为4位二进制数0000~1111.

、试分别判断下列各组数据中哪个数据最大哪个最小

①、A= B=0,101D C=0,101H

②、A=1011B B=1011D C=1011H

答:第①组:A=1×21-+1×23-=

B=

C=1×161-+163-=+=

所以A最大,C最小

第②组,B最大,A=B最小

、现有一个二进制数.若将该数看着是无符号数、原码表示的带符号数、补

码表示的带符号数,它对应的十进制数的真值是多少

答:.的无符号数的十进制是:+182;

.的原码带符号数的十进制是:-54

.补码表示的带符号数的十进制是:+74

、下列各组数据均为十进制数,先将各数据转换为补码表示的带符号数,然后用补码的加减运算分别完成下列各小题,并用十六进制数形式回答运算结果。

①、58+36 ②、(-58)+36 ③、58+(-36)④、(-58)+(-36)⑤、

58-36 ⑥、(-58)-36 ⑦、58-(-36)⑧、(-58)-(-36)

答:①、58+36的运算结果是:00111010+00010100=01001110=01011110

②、(-58)+36的运算结果是:+00010100==-000101001

③、58+(-36)的运算结果是:00111010+=00010110

④、(-58)+(-36)的运算结果是:+=

⑤、58-36的运算结果是:00111010+=00010110

⑥、(-58)-36的运算结果是:+=

⑦、58-(-36)的运算结果是:00111010+00010100=01001110=01011110

⑧、(-58)-(-36)的运算结果是:+00010100==-000101001

第二章

2.1、试说明8086/8088CPU中有哪些寄存器各有什么用途

答:寄存器AX、AL:在乘法指令中,存放乘数和乘积;

在除法指令中,存放被除数和商;

在未组合BCD码运算的校正指令中

在某些串操作指令(LODS,STOS,SCAS)中

在输入输出令中作数据寄存器

寄存器AH:在LAHF指令中作目的寄存器

寄存器AL:在组合型BCD码的加减法校正指令中

在XLAT指令中作目的寄存器

寄存器BX:在XLAT指令中基址寄存器

寄存器CX:在循环指令中作循环次数计数器

寄存器CL:在移位指令中作移位次数计数器

寄存器DX: 在字数据的乘法和除法指令中辅助累加器

寄存器SP:在堆栈操作中作堆栈指计

寄存器SI:在串操作指令中作源变址寄存器

寄存器DI:在串操作指令中作目的变址寄存器

2.2、试说明8086/8088CPU中标志寄存器各标志位的意义

答:8086/8088CPU中标志寄存器各标志位的意义是:

CF:进位标志PF:奇遇标志

AF:辅助进位标志ZF:零值标志

SF:符号位标志TF:单步标志

IF: 中断允许标志DF:方向标志

OF:溢出标志

2.3、哪些操作只能隐含使用某个段寄存器,而不能用其他寄存器替代哪些操作除隐含使用某个段寄存器外,还可以用其他段寄存器替代

答:在“取指令”、“堆栈操作”、“存目的串”三操作时,只能分别使用隐含段寄存器“CS”、“SS”“ES”,不能用其他寄存器替代;

在“取源串”、“以BP作基址”、“存取一般变量”三操作时,除了

可分别使用隐含段寄存器“DS”、“SS”“DS外,还可分别使用“CS、

相关文档
最新文档