汇编语言知识点总结
文章目录
- 一、原码反码补码
- 二、位运算
- 三、位运算的加减乘除
- 四、通用寄存器
- 五、内存
一、原码反码补码
原码:最高位是符号位,对其他的位进行本身的绝对值即可。(1负0正)
反码:
①正数:反码和原码一样。
②负数:符号位一定是1,其余位对原码取反。
补码:
①正数:补码和原码一样。
②负数:符号位一定是1,其余为反码+1。
tip:负数在计算机中以补码形式存储
二、位运算
计算机已经可以存储所有的数字,应用了运算后,任何操作都可以实现了。
①与运算(& and)
②或运算(| or)
③异或运算(xor ^) 不一样就是1
④非运算(~ not)
位运算(移动位数)
左移(<<) 高位丢弃 低位补0
右移(>>) 低位丢弃 高位补1或0(取决于符号位)
三、位运算的加减乘除
加法运算
①异或运算,如果不考虑进位,异或可以直接出结果
②与运算,判断是否进位,如果运算结果为0则没有进位
③将与运算的结果左移一位
④③的结果和①的结果异或
⑤①和③的结果与运算,判断进位,如果运算结果是0,则没有进位
计算机不会加法,相当于是加一个负数
乘法和除法本身还是加法
四、通用寄存器
存储数据:CPU>内存>硬盘
CPU分为
32位 8 16 32
64位 8 16 32 64
32位通用寄存器只有8位:EAX ECX EDX EBX ESP EBP ESI EDI
存值的范围0-FFFFFFFF
mov指令存值:
①mov 存的地址,存的数
②mov 存的地址1,存的地址1 (移动)
五、内存
寄存器很小,不够用,所以数据存到内存
程序真正运行的时候,才会用到物理内存
4G内存代表可以存储的最大容量
内存地址:给每个内存空间取得名字
32位寻址能力最高4GB
内存如何存值:
①数据宽度:byte word dword
②地址的位置:0xFFFFFFFF
不是任何地址都可以写东西的,申请使用的。只有程序申请过的内存才可以使用。