当前位置: 首页 > news >正文

一站式学会——进制转换与位运算符详解(通俗易懂)

目录

1. 进制

1.1 进制介绍

1.2 进制的图示

2. 进制的转换

2.1 进制的转换介绍

2.2 其他进制转十进制

2.3 十进制转其他进制

2.4 二进制转成八进制,十六进制

2.5 八进制,十六进制转成二进制

3. 位运算符的思考题(先引出问题)

4. 二进制在运算中的说明

5. 原码,反码,补码(难点,重点)

6. 位运算符

6.1 位运算符一览

6.2 &、|、^、~

6.3 >> 、<<



1. 进制

1.1 进制介绍

--对于整数,有如下表示方式

  1. 2进制:0,1,满2进1.以0b或0B开头。

  2. 8进制:0-7,满8进1.以数字0o或者00开头表示。

  3. 10进制:0-9,满10进1。

  4. 16进制:0-9及A(10)-F(15),满16进1.以0x或0X开头表示。此处的A-F不区分大小写

# 输出后都自动转换成十进制
#2进制
print(0b111)
print(0B111)
#8进制
print(0o111)
print(0O111)
#10进制
print(111)
#16进制
print(0x111)
print(0X111)

1.2 进制的图示

2. 进制的转换

2.1 进制的转换介绍

2.2 其他进制转十进制

1. 二进制转换成十进制实例

规则:从最低位(右边)开始,将每个位上的数提取出来,乘以2的(位数-1)次方,然后求和。

2. 八进制转换成十进制实例

规则:从最低位(右边)开始,将每个位上的数提取出来,乘以8的(位数-1)次方,然后求和。

3. 十六进制转换成十进制

规则:从最低位(右边)开始,将每个位上的数提取出来,乘以16的(位数-1)次方,然后求和。

4. 课堂练习

2.3 十进制转其他进制

1. 十进制转换成二进制

规则:将该数不断除以2,直到商为0为止,然后将每步得到的余数倒过来,就是对应的二进制

2. 十进制转换成八进制

规则:将该数不断除以8,直到商为0为止,然后将每步得到的余数倒过来,就是对应的八进制

3. 十进制转换成十六进制

规则:将该数不断除以16,直到商为0为止,然后将每步得到的余数倒过来,就是对应的十六进制

4. 课堂练习

2.4 二进制转成八进制,十六进制

四位最大表示15,三位最大是7,刚好和十六进制和八进制对应

1. 二进制转换成八进制

规则:从低位开始,将二进制数每三位一组,转成对应的八进制数即可。

2. 二进制转换成十六进制

规则:从低位开始,将二进制数每四位一组,转成对应的十六进制数即可。

3. 课堂练习

2.5 八进制,十六进制转成二进制

1. 八进制转换成二进制

规则:将八进制数每1位,转成对应的一个3位的二进制数即可

2. 十六进制转换成二进制

规则:将十六进制数每1位,转成对应的4位的一个二进制数即可

3. 课堂练习

3. 位运算符的思考题(先引出问题)

4. 二进制在运算中的说明

基本介绍:

  1. 二进制是逢2进位的进位制,0、1是基本数字符号

  2. 现代的电子计算机技术全部采用的是二进制,因为它只使用0、1两个数字符号,非常简单方便,易于用电子方式实现

  3. 计算机内部处理的信息,都是采用二进制数来表示的。二进制(Binary)数用0和1两个数字及其组合来表示任何进位规则是"逢2进1",数字1在不同的位上代表不同的值。

5. 原码,反码,补码(难点,重点)

1. 二进制的最高位是符号位:0表示正数,1表示负数

2. 正数的原码,反码,补码都一样(三码合一)

3. 负数的反码=他的原码符号位不变,其他位取反(0->1 1>0)

4. 负数的补码=它的反码+1,负数的反码=它的补码

5. 0的反码,补码都是0

6. 在计算机运算的时候,都是以补码的方式来运算的

7. 当我们要看运算结果的时候,要看它的原码

6. 位运算符

6.1 位运算符一览

6.2 &、|、^、~

~按位取反

~规则:对数据的每个二进制位取反,即把1变为0,把0变为1

分析~-2、~2的结果是多少?

2. &按位与

&规则:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0

分析2&3的结果是多少?

3. ^ 按位异或

规则:当两对应的二进位相异时,结果为1

分析2^-3的结果是多少?

4. |按位或

|规则:只要对应的二个二进位有一个为1时,结果位就为1

分析2|3的结果是多少?

6.3 >> 、<<

1. <<左移(左移一位相当于操作数*2)

<<规则:运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,符号位不变,高位丢弃,低位补0

分析5<<1、-5<<1的结果是多少?

2. >>右移(右移一位相当于操作数//2整除)

>>规则:把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数,低位溢出,符号位不变,并用符号位补溢出的高位

分析5>>1、-5>>1的结果是多少?

http://www.dtcms.com/a/333275.html

相关文章:

  • ElasticSearch不同环境同步索引数据
  • 20250815在荣品RD-RK3588-MID开发板的Android13下调通TP芯片FT8206
  • linux安装docker-compose
  • STM32在使用DMA发送和接收时的模式区别
  • 使用C# 高效实现 Word 文档内容查找与替换的6种方法
  • Java 调用 Python 脚本:实现 HelloWorld
  • 数据驱动测试提升自动化效率
  • 车辆减振器异响测试系统
  • [Pyro] 基础构件 | 随机性sample | 可学习参数param | 批量处理plate
  • find命令解读
  • 重塑工业设备制造格局:明远智睿 T113-i 的破局之道
  • 2025北京世界机器人大会:技术、场景、生态实现三重跃迁
  • ARM+OpenPLC 组合详解及经典示例
  • MySQL → SQL → DDL → 表操作 → 数据类型 知识链整理成一份系统的内容
  • 基于 ArcFace/ArcMargin 损失函数的深度特征学习高性能人脸识别解决方案
  • pandas中df.to _dict(orient=‘records‘)方法的作用和场景说明
  • 题解:CF2127D Root was Built by Love, Broken by Destiny
  • CUDA × JetPack 初学者全指南
  • Python工具箱系列(六十四)
  • go语言运算符·关系运算符
  • sql CURRENT_TIMESTAMP
  • 【DSP28335 事件驱动】唤醒沉睡的 CPU:外部中断 (XINT) 实战
  • java注释功能
  • ESP32-C3_TCP
  • Linux操作系统从入门到实战(二十二)命令行参数与环境变量
  • 信刻光盘摆渡系统案例——某省纪委
  • 微服务容错与监控体系设计
  • 生存主义:隐形异变 (Survivalist: Invisible Strain)免安装中文版
  • Leetcode 最小生成树系列(1)
  • 解决zabbix图片中文乱码