1、历史观点,程序编码,数据格式,访问信息,算数与逻辑操作,控制,摩尔定律是指IC上可容纳的晶体管数目,约每隔18个月便会增加一倍,性能也将提升一倍。,IA32 CPU 中包含的8个寄存器,存储整数数据及指针,操作数:指示出一个操作要引用的源数据值以及放置结果的目标位置立即数:$13 $OxD 表常数寄存器:Ea表示任意寄存器,REa表示其值存储器:Imm(Eb, Ea, s):Imm+REb+REa*sImm:立即偏移数Ea:基址寄存器Eb:变址寄存器,不能为%esp,%ebps:比例因子,数据传送指令: MOV类MOV S,D: D-SMOVS S,D: 符号扩展MOVZ S,D: 零扩展注意
2、:两个操作数不能都指向存储器 pushl, popl,1、加载有效地址(leal):为引用产生指针,通常用来执行简单算术操作 2、一元或二元操作:incl decl negl notl addl subl imull xorl orl andl 3、移位操作 :sall=shll(填0) sarl(算术右移,填符号位) shrl(逻辑右移,填0) 4、特殊算术操作:imull(有符号64位乘法) mull(无符号64位乘法) cltd(转换为四字)idivl(有符号除法) divl(无符号除法),除整数寄存器外,CPU还有一级单位个条件码描述最近的算术或逻辑操作属性,可以检测这些寄存器来执行条件分支指令:CF:进位标志,可以用来检测无符号操作数溢出ZF:零标志SF:符号标志,最近的操作得到的结果为负数OF:溢出标志,最近操作导致一个二进制实在溢出正溢出或负溢出,Leal指令不改变任何条件码cmp test只设置条件码,而不改变任何其他寄存器,1、根据条件码组合设置字节 SET,使用条件吗:,2、跳转,