Y86指令体系结构
Y86的程序猿可见状态:寄存器,储存器,条件码,PC,程序状态
Y86指令集
halt:终止指令的执行
nop:占位指令,不做任何事
**movl:一系列数据传送指令。r代表寄存器,m代表储存器,i代表立即数。
opl:操作指令
jxx:条件跳转指令,根据后面的条件进行跳转
cmovxx:条件传送指令。xx是条件,只发生在两个寄存器之间
call与ret:方法的调用和返回指令。一个将返回地址入栈,并跳到目标地址。一个将返回地址入PC,并跳到返回地址。
push与pop:入栈和出栈操作
指令编码
一般两个寄存器占用一个字节,储存器占四个字节,指令的编码和功能占一个字节。
寄存器的表示:4个二进制位
Y86异常
Y86的四种不同状态码:AOK(正常)、HLT(执行halt指令)、ADR(非法地址)、INS(非法指令)
Y86程序
和x86相似,但有时候Y86需要两条指令来达到X86只要一条即可
eg:addl $4,%ecx
v1.5.2