【计算机底层】二进制到汇编(5)
前言:
本文内容:位运算理解、位运算真实加减乘除
推荐免费计算机底层入门讲解视频:【狂神说】最通俗易懂的计算机底层教学,二进制到汇编学习!_哔哩哔哩bilibili
位运算理解
寄存器:mov寄存器 存值
位运算:
计算机现在可以存储所有数字(正数,浮点,字符)的运算。
0 1
位运算:
2*8最高高效计算方式。(位运算最高效)
很多底层的调试器,需要通过位来判断CPU的状态。
与运算(and &)
全true为true,一false为false。
1 | 1011 0001 |
或运算(or |)
true|false为true,false|false为false。
1 | 1011 0001 |
异或运算(xor ^)
不一样就是1
1 | 1011 0001 |
非运算(单目运算符 not ~ !)
0就是1,1就是0,取反
1 | 1101 1000 |
通过这些可以完成加减乘除!位运算来实现加减乘除!
位运算(移动位)
-
左移:(shl<<)
1
20000 0001 @ 所有二进制位全部左移若干位,高位就丢弃了,低位补0
0000 0010 -
右移:(shr>>)
1
20000 0001 @ 所有二进制位全部右移若干位,低位就丢弃了,高位就需要补0,1(符号位决定)
0000 0000
1 | 0000 0001 1 |
位运算真实加减乘除
计算机只认识 0 1
基本数学是建立在 加减乘除。(加法)
4+5
1 | 计算机是怎么操作的 |
4-5
1 | 计算机是怎么操作的 |
乘:x*y,就是y个x相加,还是加法。
除:x/y,本质就是减法,就是x能减去多少个y。
计算机只会加法!
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Hey,Joker!
评论
ValineTwikoo