Fork me on GitHub

CSAPP-6

算术和逻辑操作

加载有效地址

leaq:将有效地址写入目的操作数,目的操作数必须是一个寄存器、

区别于mov!!!!

一元和二元操作

一元:一个操作数

二元:俩个操作数

移位操作

移位量,要移位的数。

移位量可以是立即数,或者放在单字节寄存器%cl中;目的操作数:寄存器或者内存位置

高位被忽略,eg:salb移7位……

左移:SAL、SHL右边都是填0

右移:SAR左边填符号位。SHR左边填0

大多数指令既可以用于无符号运算,也可以用于补码运算,只有右移操作要求区分有符号和无符号数

特殊的算术操作

0%