指令与条件码

一.ALU:算数逻辑单元

ALU从寄存器中读取数据后,执行相应的运算,在返回目的寄存器rdx中.简单示例如下图

指令与条件码_第1张图片

当然ALU除了执行算术和逻辑运算指令以外,还会根据运算结果去设置条件码寄存器.

                        指令与条件码_第2张图片

二.条件码寄存器:

长度为单个比特位

指令与条件码_第3张图片

CF检测溢出,ZF检测零也就是说a+b结果为1, ZF为0,其他类似

相应c代码与汇编例子:

指令与条件码_第4张图片

 指令与条件码_第5张图片

指令与条件码_第6张图片

指令与条件码_第7张图片

三.嵌套数组:

指令与条件码_第8张图片

地址计算:xd起始地址,L表示数据类型T的大小,对于int就是4

指令与条件码_第9张图片

 指令与条件码_第10张图片

 四.结构体指针

指令与条件码_第11张图片数据存储合法限制(地址对齐),如下图:例如j占4个字节,他的起始地址得是4的整数倍,所以在变量c,j之间插入3个字节空隙,这样j相对起始地址就是8个字节的偏移.整个结构体大小就是12个字节

指令与条件码_第12张图片

五.联合体

联合体的大小取决于他最大字段的大小

指令与条件码_第13张图片

 

你可能感兴趣的:(操作系统,fpga开发)