千锋教育-做有情怀、有良心、有品质的职业教育机构

400-811-9990
手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

上海
  • 北京
  • 郑州
  • 武汉
  • 成都
  • 西安
  • 沈阳
  • 广州
  • 南京
  • 深圳
  • 大连
  • 青岛
  • 杭州
  • 重庆
当前位置:南昌千锋IT培训  >  技术干货  >  反码补码原码怎么转换?

反码补码原码怎么转换?

来源:千锋教育
发布人:xqq
时间: 2023-10-14 09:17:36

本文将介绍这三种方式的定义和转换方法,并给出一些例子。

一、什么是原码

原码是最直观的表示方式,就是将一个有符号整数的符号位和数值位按照顺序存储在计算机中。符号位通常是较高位,0表示正数,1表示负数。数值位就是该整数的绝对值的二进制形式。例如,8位二进制数可以表示-127到127之间的整数,其中00000000表示0,00000001表示1,01111111表示127,10000000表示-0,10000001表示-1,11111111表示-127。

二、什么是反码

反码是对原码进行按位取反的操作,但是符号位不变。也就是说,正数的反码和原码相同,负数的反码是除了符号位之外的其他位取反。例如,8位二进制数的反码表示如下:

00000000(原码) -> 00000000(反码)
00000001(原码) -> 00000001(反码)
01111111(原码) -> 01111111(反码)
10000000(原码) -> 11111111(反码)
10000001(原码) -> 11111110(反码)
11111111(原码) -> 10000000(反码)

三、什么是补码

补码是在反码的基础上加1的结果,也就是说,正数的补码和原码相同,负数的补码是在其反码的最低位加1。例如,8位二进制数的补码表示如下:

00000000(原码) -> 00000000(补码)
00000001(原码) -> 00000001(补码)
01111111(原码) -> 01111111(补码)
10000000(原码) -> 10000000(补码)
10000001(原码) -> 11111111(补码)
11111111(原码) -> 10000001(补码)

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

为什么采用线性探测法散列算法?

2023-10-14

为什么Redis一定要用跳表来实现有序集合?

2023-10-14

markdown用什么软件?

2023-10-14

最新文章NEW

为什么将stack译作堆栈而不是栈?

2023-10-14

什么是单支树?

2023-10-14

为什么python没有大顶堆?

2023-10-14

相关推荐HOT

更多>>

快速通道 更多>>

最新开班信息 更多>>

网友热搜 更多>>