原码 反码 补码|学习笔记

简介: 快速学习原码 反码 补码。

开发者学堂课程【GO 语言核心编程-基础语法、数组、切片、Map:原码 反码 补码】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/625/detail/9557


原码 反码 补码

 

内容简介:

一、位运算的思考题

二、二进制在运算中的说明

三、原码、反码、补码

 

一、位运算的思考题

1)请看下面的代码段,回答a,b,c,d结果是多少?

func main() }

var a int = 1 >> 2

var b int = -1 >> 2

var c int =1 << 2

var d int = -1 << 2

//a,b,c,d结果是多少 ?

fmt.Printin("a=" a)

fmt.Printin("b=”b)

fmt.Printin("c=",c)

fmt.Printin("d=”,d)2)

}

2)请回答在 Golang 中,下面的表达式运算的结果是:

func main() {

fmt.Printin(2&3)

fmt.Printin(2|3)

fmt.Printin(13&7)

fmt.Printin(5|4)

fmt.Printin(-3^3)

}

 

二、二进制在运算中的说明

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

计算机内部处理的信息,都是采用二进制数来表示的。

二进制( Binary )数用0和1两个数字及其组合来表示任何数。进位规则是“逢2进1”,数字1在不同的位上代表不同的值,按从右至左的次序,这个值以二倍递增。在计算机的内部,运行各种运算时,都是以二进制的方式来运行。

 

三、原码、反码、补码

网上对原码反码补码的解释过于复杂,精简6句话:

对于有符号的而言:

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

1---》[0000 0001] -1===>[1000 0001]

2) 正数的原码,反码,补码都一样

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

1===>原码[00000001]反码[00000001]补码[00000001]

-1===>原码[10000001]反码[11111110]补码[11111111]

4) 负数的补码=它的反码+15)

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

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

1+1 1-1=1+(-1)

相关文章
|
人工智能 小程序 算法
分享64个JavaGame源码总有一个是你想要的
分享64个JavaGame源码总有一个是你想要的
418 0
|
iOS开发 MacOS
mac bookpro m1 笔记本关闭键盘屏幕 禁用键盘屏幕使用 键盘屏幕误触 Touch Bar禁用 禁用MacBook-Pro的触摸栏
mac bookpro m1 笔记本关闭键盘屏幕 禁用键盘屏幕使用 键盘屏幕误触 Touch Bar禁用 禁用MacBook-Pro的触摸栏
624 3
|
6月前
|
JSON 生物认证 API
harmony-utils之DialogUtil,弹窗工具类
DialogUtil 是 HarmonyOS 工具库 harmony-utils 中的弹窗工具类,提供丰富的弹窗样式与功能,包括确认框、选择器、日期时间选择等。支持自定义样式与按钮行为,帮助开发者快速构建交互友好的鸿蒙应用界面。
217 0
|
6月前
|
文字识别 监控 Java
顺丰同城抢单辅助脚本,顺丰骑士抢单辅助免封号,自动抢单神器【java版开源】
这是一套OCR实时检测订单列表并自动右滑的完整代码方案,适用于学习研究。代码包含四个主要模块:OCR处理(文字识别)、价格分析
|
10月前
|
存储 安全 Windows
u 盘不显示盘符怎么办?
在日常使用电脑的过程中,u盘是我们常用的存储设备之一。无论是传输文件、备份数据,还是安装系统,u盘都扮演着重要的角色。然而,有时候我们会遇到一个令人头疼的问题:插入u盘后,电脑上却没有显示盘符。这种情况不仅让人感到困惑,还可能影响工作进度。那么,遇到u盘不显示盘符的情况,我们该如何解决呢?接下来,我们将从多个角度分析可能的原因,并提供相应的解决方案。
|
Kubernetes Java 微服务
微服务上下线动态感知实现的技术解析
随着微服务架构的广泛应用,服务的动态管理和监控变得尤为重要。在微服务架构中,服务的上下线是一个常见的操作,如何实时感知这些变化,确保系统的稳定性和可靠性,成为了一个关键技术挑战。本文将深入探讨微服务上下线动态感知的实现方式,从技术基础、场景案例、解决思路和底层原理等多个维度进行阐述,并分别使用Java和Python进行演示介绍。
329 4
|
数据采集 机器人 计算机视觉
一手训练,多手应用:国防科大提出灵巧手抓取策略迁移新方案
【10月更文挑战第24天】国防科技大学研究人员提出了一种新颖的机器人抓取方法,通过学习统一的策略模型,实现不同灵巧夹具之间的策略迁移。该方法分为两个阶段:与夹具无关的策略模型预测关键点位移,与夹具相关的适配模型将位移转换为关节调整。实验结果显示,该方法在抓取成功率、稳定性和速度方面显著优于基线方法。论文地址:https://arxiv.org/abs/2404.09150
210 1
|
SQL 关系型数据库 MySQL
MySQL数据库基础练习系列2、图书借阅管理系统
MySQL数据库基础练习系列2、图书借阅管理系统
360 1
|
人工智能 自然语言处理 容灾
女神营业!云通信产品运营带你玩转号码隐私保护:网约车、外卖等O2O行业的最佳实践
大家都知道,用户的号码隐私已经成为了社会和企业共同关注的话题,尤其是在网约车、外卖等O2O行业中,用户号码的频繁使用,如何规避泄露风险呢?今天,阿里云通信产品运营胡杨将带大家一探“号码隐私保护”的究竟。
1154 0
女神营业!云通信产品运营带你玩转号码隐私保护:网约车、外卖等O2O行业的最佳实践