《汇编语言第1-2章基础知识.ppt》由会员分享,可在线阅读,更多相关《汇编语言第1-2章基础知识.ppt(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、IBM-PC汇编语言程序设计第1章 基础知识(Basic computer)简介(Preface):机器语言(Machine Language)汇编语言(Assembly Language)高级语言(High _ level Language)1.1 数的表示(Data representationData representation)数的表示:an an-1 a0.b1 b2.b m anrn+an-1rn-1+a0r0+b1r-1+b m r-m 其中,r-基数 r k -权 例如:r-10 (Decimal)an10n+an-110n-1+a0100+b110-1+b m 10-m r
2、-2 (Binary)an2n+an-12n-1+a020+b12-1+b m 2-m r-8 (Octal)r-16 (Hexadecimal)汇编程序中数的表示:例如,10B 10D 10H 数制之间的转换 1.二进制十进制(converting Binary to Decimal):an an-1 a0.b1 b2.b m =an2n+an-12n-1+a020+b12-1+b m 2m 2.十进制二进制(converting Decimal to Binary):方法一:除法 方法二:降幂法 例如:13D 23=8,22=4,21=2,20=1 13-8=5 1 5-4=1 1 1-2
3、 0 1-1=0 1 13D=1101B 3.十六进制十进制(converting Hexadecimal to Decimal):an an-1 a0.b1 b2.b m =an16n+an-116n-1+a0160+b116-1+b m 16m 4.十进制十六进制(converting Decimal to Hexadecimal):方法一:除法 方法二:降幂法 例如:48956D 163=4096,162=256,161=16,160=1 48956-114096=3900 B 3900-15256=60 F 60-316=12 3 12-121=0 C 48956D=BF3CH 5.二
4、进制十六进制(converting Binary to Hexadecimal):6.十六进制二进制(converting Hexadecimal to Binary):1.2 数的计算(Calculation of digitsCalculation of digits)二进制加法(Binary addition)二进制乘法(Binary multiple)十六进制加法(Hexadecimal addition)十六进制乘法(Hexadecimal multiple)几种基本逻辑运算(Boolean Operations)与(AND)、或(OR)、非(NOT)、异或(XOR)1.3 计算机中
5、数和字符的表示(Data and ASCII strings representationData and ASCII strings representation)数据 1.无符号数 (Unsigned Integer)0N2k-1 例如,8位二进制数:0255 16位二进制数:065535 2.有符号数(Signed Integers)-补码 -2k-1 N2k-1-1 例如,8位二进制数:-128127 16位二进制数:-3276832767 3.补码的特点 求补 求补 X补 -X补 X补 X+Y补=X补+Y补 X-Y补=X补+-Y补字符表示法 -ASCII码 ASCII码表见P11 表
6、1.3本章小结1.数制之间的转换2.有符号数、无符号数和字符表示 第2章 80X86计算机组织(Component of 80X86)2.1 80X86微处理器2.2 基于微处理器的计算机系统构成(Component of Microcomputer with Component of Microcomputer with microprocessormicroprocessor)硬件(Hardware)寄存器组(register)CPU 控制器(control unit)运算器(arithmetic logic unit):逻辑运算和算术运算 存储单元(Memory storage unit
7、)-内存 I/O系统(I/O system):I/O设备,大容量的外存 数据总线 总线 地址总线 控制总线 软件(Software)用户软件 系统软件-操作系统操作系统中的常驻监督程序:文件管理程序 I/O驱动程序 调试程序 -debug 文本编辑程序 -edit 翻译程序 -masm 连接程序 -link 装入程序 系统程序库 2.3 中央处理机(CPU)CPU的组成80X86寄存器组通用寄存器(General-Purpose Registers)数据寄存器(Data Registers):AX BX CX DX -16位AH AL BH BL CH CL DH DL-8位 AX:累加器AC
8、 (Accumulator Register)BX:基址寄存器(Base Register)CX:计数器 (Counter Register)DX:与AX同 2.段寄存器(Segment Registers)CS SS DS ES -16位 CS 代码段(code)DS 数据段(data)ES 附加段(extra)SS 堆栈段(stack)3.指针及变址寄存器(Pointer and Index Registers)SP BP SI DI -16位 SP:堆栈指针寄存器(stack pointer register)BP:基址指针寄存器(base pointer register)SI:源变址
9、寄存器 (source index register)DI:目的变址寄存器(destination index register)专用寄存器(Specialized Uses Registers)1.指令指针寄存器(Instruction Pointer)IP -16位 2.标志寄存器(Flags)-16位 状态标志位(status flags)有以下6个:CF:进位标志(carry flag)SF:符号标志(sign flag)OF:溢出标志(overflow flag)ZF:零标志(zero flag)AF:辅助进位标志(auxiliary flag)PF:奇偶标志(parity flag
10、)控制标志位(control flags)有以下3个:DF:方向标志(direction flag)IF :中断标志(interrupt flag)TF:跟踪标志(trap flag)见P24页表2.22.4 存储器(Memory subsystemMemory subsystem)存储单元的地址和内容 1.地址:位、字节、字、双字 16位地址空间:216,即64k 范围:065535,即0000H0FFFFH 特点:地址必须唯一 2.存储单元内容与地址的关系表示 0000H 34H 0001H 12H 0002H 7CH 0003H 1234H 25H 1235H F8H FFFFH 字节:
11、(0000H)=34H 字:(0000H)=1234H (1234H)=0F825H 即:(0000H)=0F825H实模式内存 地址总线:20位 内存空间为:220=1M 问题:20位地址与16位机器字长的矛盾如何解决?地址范围:000000FFFFFH 00000H,00001H,00002H,.,0000FH 00010H,00011H,00012H,.,0001FH 00020H,00021H,00022H,.,0002FH .FFFE0H,FFFE1H,FFFE2H,FFFEFH FFFF0H,FFFF1H,FFFF2H,.,FFFFFH 解决方案:分段 物理地址=段首地址(16位)16+偏移地址(16位)*段允许重叠,但不允许覆盖2.5 外部设备接口 接口上的寄存器组分类:数据寄存器 状态寄存器 命令寄存器 端口地址:0000FFFFH DOS功能调用BIOS功能调用