资源描述:
《[理学]汇编语言知识点》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、汇编语言复习题之知识点参考基础版本第一章十进制与二进制之间的转换(P2)降幂法除法十进制与六进制之间的转换(P5)降幂法除法补码表示:正数:采用符号—绝对值法负数:先写出对应的正数的补码表示,然后再将其按位数求反,最后末尾加1,就可以得到负数的补码表示补吗运算:二进制数按位求反后在末尾加1第二章一、存储容量1K=1024=210(Kilo)1M=1024K=220(Mega)1G=1024M=230(Giga)1个二进制位:bit(比特)8个二进制位:Byte(字节)1Byte=8bit2个字节:1Word(字)1Word=2Byte=16bi
2、t二、存储单元地址和内容1.存储器以字节(8bit)为编程单位2.每个字节单元都有唯一的地址编码3.地址用无符号整数来表示(编程用十六进制表示)4.一个字要占用相继的两个字节5.低位字节存入低地址,高位字节存入高地址6.字单元地址用它的低地址来表示7.机器以偶地址访问(读/写)存储器三、物理地址=16´段地址+偏移地址四、存储器的分段:20根地址线:地址范围00000H~FFFFFH(1MB)机器字长16位:仅能表示地址范围0000H~FFFFH(64KB)小段:每16个字节为一小段,共有64K个小段段起始地址:小段首地址段的大小:64K范围内
3、的任意字节五、存储器的逻辑分段优点:允许程序在存储器内重定位;允许实模式程序在保护模式下运行;有利于程序和数据的分离。六、中央处理器8086/8088寄存器组:通用寄存器数据寄存器:AX,BX,CX,DX变址寄存器:SI、DI指针寄存器:SP、BP控制寄存器:IP、FLAGS段寄存器:CS、DS、SS、ES汇编语言复习题之知识点参考基础版本一、标志寄存器(FLAGS/PSW)条件标志位:OF溢出标志SF符号标志ZF零标志CF进位标志AF辅助进位标志PF奇偶标志控制标志位:DF方向标志IF中断标志TF陷阱标志二、寄存器与存储器的比较:寄存器:在C
4、PU内部;访问速度快;容量小,成本高;用名字表示;没用地址存储器:在CPU外部;访问速度慢;容量大,成本低;用地址表示;地址可用各种方式形成第三章寻址方式操作数所在位置物理地址(PA)格式注意1.立即寻址存储器的代码段无MOVAL,5只能用源操作数操作数和源操作数的长度一致2.寄存器寻址寄存器(唯一)无 MOVAX,BX字节寄存器只有AHALBHBLCHCLDHDLCS不能用MOV指令改变,源操作数和目的操作数的字长一致3.直接寻址存储器 段地址+位移量 MOVAX,ES:[2000H]MOVAX,VALUEMOVAX,[2000H]默认的
5、段地址存储在DS中遇到BP的段地址存储在SS可以使用段跨越前缀4.寄存器间接寻址存储器段地址+基址/变址MOVAX,[BX]MOVAX,ES:[BX]可用的寄存器:BXBPSIDI不允许使用AX、CX、DX存放偏移地址(EA)SRC和DST的字长一致使用BP时,默认的数据段是SS,其余都是DS5.寄存器相对寻址存储器段地址+基址/变址+位移量MOVAX,COU[SI]MOVAX,ES:[COU+SI]MOVAX,[COU+SI]可以使用段跨越前缀6.基址变址寻址存储器段地址+基址+变址MOVAX,[BX+SI]MOVAX,[BX][SI]可以使
6、用段跨越前缀7.相对基址变址存储器段地址+基址+变址+位移量MOVAX,MASK[BX][SI]MOVAX.MASK[BX+SI]可以使用段跨越前缀 汇编语言复习题之知识点参考基础版本一、数据传送指令传送指令MOVCPU内部寄存器之间的数据传送指令格式:MOVDST,SRC执行操作:(DST)¬(SRC)注意:*DST、SRC不能同时为段寄存器MOVDS,ES´*DST、SRC不能同时为存储单元*立即数不能直接送段寄存器MOVDS,2000H´*DST不能是立即数和CS*不影响标志位交换指令XCHG指令格式:XCHGOPR1,OPR2执行操作:
7、(OPR1)«(OPR2)例:XCHGBX,[BP+SI]XCHGAL,BH注意:*两个操作数字长一致*两个操作数都不能是段寄存器*两个操作数都不能是立即数*两个操作数不能同时是存储单元*可以采用除立即寻址方式外的任何一种寻址方式。*不影响标志位地址传送指令LEA、LDS、LES1.有效地址送寄存器指令:LEAREG,SRC执行操作:(REG)¬SRC2.指针送寄存器和DS指令:LDSREG,SRC执行操作:(REG)¬(SRC)(DS)¬(SRC+2)相继二字®寄存器、DS3.指针送寄存器和ES指令:LESREG,SRC执行操作:(REG)¬
8、(SRC)(ES)¬(SRC+2)相继二字®寄存器、ES注意:*源操作数必须为存储器操作数*目的操作数必须是一个16位通用寄存器,不能是段寄存器*源操