80x86汇编语言程序设计习题详解

4星 · 超过85%的资源 需积分: 21 100 下载量 77 浏览量 更新于2024-07-31 10 收藏 180KB DOC 举报
"《80x86汇编语言程序设计(第2版)》习题答案包含了80X86汇编语言程序设计的课后习题解答,由华中科技大学出版社出版,主要涉及程序设计、汇编语言以及计算机基础知识。" 在80X86汇编语言程序设计中,汇编器的主要任务是从汇编语言源文件转换成目标文件,这个过程包括了语法检查,即将源代码验证是否符合汇编语言的语法规则,以及将源代码中的符号指令翻译成对应的机器指令。而连接器的主要工作则是处理一个或多个目标文件以及库文件,生成可执行文件。连接过程中,它会完成浮动地址的重定位,即将代码中相对地址转化为绝对地址,并且处理多模块间的连接。 习题1-2涉及到将十六进制数字转换为二进制表示。例如,(1)2EH转换为二进制为00101110,(2)0D2H转换为二进制为011010010,(3)0FFH转换为二进制为11111111。1-4题讲述了无符号数和带符号数的范围,无符号数在8位系统中范围为0到255,而在16位系统中为0到65535;带符号数在8位系统中范围为-128到127,16位系统中为-32768到32767。 1-5题涉及到BCD码(Binary-Coded Decimal),压缩BCD码和非压缩BCD码的区别在于每个数字占用了不同的位数。例如,十进制数58的压缩BCD码为58H,非压缩BCD码为x5x8H。1-6题中,(1)到(3)分别要求表示字符、压缩BCD码、非压缩BCD码和二进制补码形式。 1-7题考察了不同数值在无符号和带符号数表示下的转换,以及它们在不同位宽(16位和32位)下的表示。例如,0FF9FH在无符号数下为159,但在带符号数下为-97。 1-8题涉及到位操作,如AND、OR和移位操作。例如,AND0FH可以用于提取低4位的值,而右移4位可以获取高位的值。 在第二章中,讨论了系统总线的角色,它包括数据总线、地址总线和控制总线,分别用于数据传输、地址传输和控制信号。数据总线的宽度决定了CPU一次能处理的数据量,地址总线的位数决定了系统的最大内存地址空间,而控制总线则协调CPU与其他硬件组件间的数据传输方式。 8位通用寄存器如AH、AL、BH、BL、CH等在80X86架构中扮演着关键角色,它们用于存储数据、地址或计算中间结果,是执行汇编语言指令时的重要组成部分。