机器语言基础整理

原码、反码和补码

源码:最高位符号位,对其它的位进行本身绝对值即可
反码:

  • 正数:反码和原码相同
  • 负数:符号位为1,其余位对原码取反
    补码:
  • 正数:补码和原码相同
  • 负数:符号位是1,反码+1

测试

# 如果是正数,那都是一样的
1
# 原码 0000 0001
# 反码 0000 0001
# 补码 0000 0001

# 如果是负数
-1
# 原码 1000 0001
# 反码 1111 1110
# 补码 1111 1111

计算机底层数字的存储,正数存储的原码,负数存储的是补码

位运算

与运算(and &)

在这里插入图片描述

1011 0001
1101 1000
----------- 与运算
1001 0000

或运算(or |)

在这里插入图片描述

1011 0001
1101 1000
----------- 或运算
1111 1001

异或运算(xor ^)

不一样就是1。10 01
在这里插入图片描述

1011 0001
1101 1000
----------- 异或运算
0110 1001

非运算(单目运算符 not ~)

0就是1,1就是0

1101 1000
----------- 非运算
0010 0111

位运算(移动位)

左移(shl <<)

0000 0001	所有二进制位全部左移若干位,高位丢弃,低位补0
0000 0010

右移(shr >>)

0000 0001	所有二进制位全部右移若干位,低位丢弃,高位就需要补0或1(符号位决定)
0000 0000
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值