汇编语言课后习题及答案 按章节 超全面
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
`00第一章课外练习题
一、单项选择题:
1.从键盘输入的字符,在计算机内存储的是它的(A)
(A)二进制编码(B)四进制编码(C)八进制编码(D)十六进制编码2.6位无符号二进制数能表示的最大十进制数是(B)。
(A) 64 (B) 63 (C) 32 (D) 31 3.十进制数269变换为十六进制数是(C)。
(A)10B (B)10C (C)10D (D)10E 4.8位的微型计算机系统是以16位来表示地址,则该微机系统有(C)个地址空间。
(A)255 (B)65535 (C)65536 (D)1048576 5.8位有符号二进制数能表示的最大十进制数是(D)。
(A)256 (B)255 (C)128 (D)127 6.十六进制数88H,可表示成下面几种形式,请找出错误的表示(D)。
(A)无符号十进制数136 (B)带符号十进制数-120
(C)压缩型BCD十进制数88 (D)8位二进制数-8的补码表示
7.有一个数值152,它与十六进制数6A相等,那么该数值是(B)。
(A)二进制数(B)八进制数(C)十进制数(D)四进制数8.7位ASCII总共可表示(C)个符号。
(A)256 (B)127 (C)128 (D)255 9.4B的字长是(C)。
(A)8位(B)16位(C)32位(D)64位
二、判断题(判断每题正误,对的在题后括号内划“√”,错的划“×”)
1.字节通常用英文单词“Bit”来表示(×)。
2.目前广泛使用的Pentium计算机其字长为5个字节(×)。
3.存储器中将8个相邻的二进制位作为一个单位,这种单位称为字节(√)。
4.微型计算机的字长并不一定是字节的整数倍(×)。
三、填空题
1.8位有/无符号整数的表示范围写成16进制形式为(80~~7F) /(00~~FF)。
2.己知:计算机中有一个“01100001”编码,如果把它看作是无符号数,它是十进制什么数(97);如果认为它是BCD,则表示(01100001)BCD;认为它是某个ASCII,则代表(a)字符。
3.若[X]补=X,则X为(非负数)。
4.(00101011)B+(13)D+(1B)H=(123)Q
5.已知:A=,B=,求A∧B=();A∨B=()。
6.已知:X=+0010011B,Y= -0111100B,试用补码完成真值(X+Y)=();(X - Y)=(01001111)。
7.十进制数的(731)=(0)BCD。
8.(0)BCD=(731)十进制数。
9.将一个0~9之间的数据转换为ASCII需加(30H)。
10.大写英文字母转换为小写英文字母需加(20H)。
11.英文字母“A”~“F”转换为十六进制数值A~F需要减(37H)。
四、简答题
1.什么是汇编语言?为什么要学习汇编语言?
答:汇编语言是机器语言的符号表示形式。它不仅是计算机原理、操作系统等课程的必要先修课,而且对于训练学生掌握计算机工作原理、程序设计技术、熟练上机操作和程序调试技术都有重要作用。
3.把下列二进制数转换成十进制数。
①=② =
③ = ④ =
5.把下列十六进制数转换成十进制数。
① =166. ② 9AC.BD=2476.
③ 4A=2890. ④ 1AC.0A=428.
6.把下列英文单词转换成ASCII编码的字符串。
① Water=72② Great=74
③ Good=476F6F64④ After=72
7.回车键、空格键的ASCII代码及其功能是什么?答:0DH、20H。字符从头开始、空一个字符的位置。
第二章课外练习题
一、单项选择题:
1.下列四个寄存器中,哪个寄存器在程序设计中是不可省略的(A)。
(A)CS (B)DS (C)ES (D)SS 2.指令MOV AX, 10[SI]的源操作数字段的寻址方式是(C)。
(A)寄存器寻址(B)寄存器间址(C)变址寻址(D)基址寻址3.8086∕8088 CPU中可用作寄存器间址的寄存器是(B)。
(A)BX、SI、DI (B)BX、BP、SI、DI
(C)BX、IP、SI、DI (D)BX,DX,SI,DI
4.指令MOV 100[SI][BP],AX 目标操作数的隐含段为(B)。
(A)数据段(B)堆栈段(C)代码段(D)附加段
第二章课外练习题
一、单项选择题:
1.下列四个寄存器中,哪个寄存器在程序设计中是不可省略的(A)。
(A)CS (B)DS (C)ES (D)SS 2.指令MOV AX, 10[SI]的源操作数字段的寻址方式是(C)。
(A)寄存器寻址(B)寄存器间址(C)变址寻址(D)基址寻址3.8086∕8088 CPU中可用作寄存器间址的寄存器是(B)。
(A)BX、SI、DI (B)BX、BP、SI、DI
(C)BX、IP、SI、DI (D)BX,DX,SI,DI
4.指令MOV 100[SI][BP],AX 目标操作数的隐含段为(B)。
(A)数据段(B)堆栈段(C)代码段(D)附加段
二、判断题(判断每题正误,对的在题后括号内划“√”,错的划“×”)
1.当SP, BP, SI,DI用于指针和变址寄存器使用时;
①SP中所含的偏移地址是堆栈段中的偏移地址。(√)
②BP、SI、DI所含的偏移地址是数据段中的偏移地址。(×)
2.奇偶标志位PF,当运算结果的低8位中有偶数个1时,被置为0。(×)
3.零标志位ZF,当运算结果为0时,被置为0。(×)
4.符号标志位SF,在运算结果为负时被置为1。(√)
三、填空题
1.在8086/8088CPU中,有许多寄存器,他们是通用寄存器:(AX)(BX)(CX)(DX);指针和变址寄存器:(SP)(BP)(SI)(DI);段寄存器:(CS)(DS)(SS)(ES);指令指针:(IP)还有一个标志寄存器:(PSW),他们都是(16)位的。
2.IBM PC机内存容量最大为(1M)B,要寻找这样大的空间,需要(20)根地址线。
3.每个逻辑段的最大长度为(64KB)。
4.在IBM PC机中,有4个专门存放段地址的寄存器,称为段寄存器,请写出以下段寄存器的符号:
代码段寄存器:(CS)数据段寄存器:(DS)
堆栈段寄存器:(SS)附加段寄存器:(ES)
四、简答题
1.IBM PC 的存储器为什么采用分段结构?
答:是因为要寻找20位存储器地址的需要。使用两个十六进制的寄存器做一个寻找20位寄存器工作的一种方法。
2.什么是逻辑地址?什么是物理地址?如何由逻辑地址计算物理地址?
答:逻辑地址是由两部分组成的,即段的基地址和偏移地址。程序员在编写程序时使用的都是逻辑地址。物理地址就是内存单元中的一个惟一的20位二进制数表示的地址,物理地址的范围是从00000H到FFFFFH。CPU与存储器进行数据交换时所使用的地址就是物理地址。
物理地址=段地址×16D+偏移地址。
3.如果在一个程序段开始执行之前,CS=0A7F0H,IP=2B40H,试问该程序段的第一个字的物理地址是多少?答:物理地址=段地址×16D+偏移地址=0A7F0H×16D+2B40H=0AAA00H
4.一个有16个字的数据区,它的起始地址为70A0:DDF6,那么该数据区的最后一个字单元地址是多少?
答:=DDF6H+20H-2H(16个字=32个字节=20H个字节)=DE14即70A0::DE14