计算机正负数运算:【补码】

server/2024/10/25 13:57:03/

计算机使用的是二进制,且计算机是以补码的方式进行存储数据的,补码是通过原码、反码一步步演变而来的。

1:源码,反码,补码

原码:第一位符号位数为0是正1是负

反码:是在原码的基础上进一步改进,正数时反码和原码一样,负数时原码第一位不变,其他取反,就是反码。

补码:正数补码,反码以及原码一致,而负数补码是在原有负数的反码上面加1

比如:

+0 + (-0) = 0000 + 0000 = 0000

+1 + (-1)= 0001 + 1111 = 1 0000  = 0000 (由于这是一个4位二进制数,因此最高位的进位会被丢弃(这称为溢出),最终得到的结果是0000,即0)

+2 + (-1)= 0010 + 1111 = 1 0001 = 0001 (最高位的进位会被丢弃

2:为什么要用补码

1. 简化计算机运算

统一运算方式:补码使得计算机在进行加法和减法运算时,可以采用统一的加法器来处理,因为补码可以将减法转换为加法。这种特性简化了计算机内部的硬件设计,降低了设计复杂度和成本。

符号位参与运算:在补码表示法中,符号位(最高位)与数值位一起参与运算,这进一步简化了计算机的运算规则,提高了运算效率

2. 扩大数值表示范围

表示范围更广:相比原码和反码,补码能够表示一个额外的负数(即-128,在8位二进制中)。这是因为补码通过一种巧妙的方式,使得最低位的负数能够用全1来表示,从而扩展了数值的表示范围。

3. 解决0的表示问题

唯一表示0:在原码和反码表示法中,0存在两种表示方式(+0和-0),这在实际应用中可能会引起混淆。而补码通过特定的编码方式,使得0只有一种表示方式(即全0),从而避免了这种混淆。

4. 逻辑完整性

逻辑自洽:补码的设计使得计算机在处理数值时更加逻辑自洽。例如,在补码表示法中,一个整数的补码再求补码,结果等于该整数本身,这种特性使得补码在数值运算和表示上更加严谨和可靠。


http://www.ppmy.cn/server/134732.html

相关文章

Ubuntu20.04 更新Nvidia驱动 + 安装CUDA12.1 + cudnn8.9.7

一、概述 最近客户给了几台GPU服务器,长期放置落灰那种,然后想利用起来,所以上去看看了配置,系统是Ubuntu20.04,相关的驱动版本稍嫌老一些,所以需要更新Nvidia驱动,同时在安装CUDA和CUDNN&#…

ctfshow(41)--RCE/命令执行漏洞--或绕过

Web41 源代码: if(isset($_POST[c])){$c $_POST[c]; if(!preg_match(/[0-9]|[a-z]|\^|\|\~|\$|\[|\]|\{|\}|\&|\-/i, $c)){eval("echo($c);");} }else{highlight_file(__FILE__); }代码审计: 过滤了数字和字母,但没有过滤或…

java前后端项目问题总结

java前后端项目问题总结 1、字段 数据库 数据库在建表时除了需要的字段还有六个必要字段 主键 id 逻辑删 is_delete 创建人create_by 创建时间create_time 修改人 update_by 修改时间 update_time 这些字段在实体类中写法 //Date注解会自动生成一个无参构造&#xf…

docker 部署单节点的etcd以及 常用使用命令

docker部署etcd $ docker run -d --name etcd-server -p 2379:2379 -p 2380:2380 quay.io/coreos/etcd:v3.5.0 /usr/local/bin/etcd -name my-etcd-1 -advertise-client-urls http://0.0.0.0:2379 -listen-client-urls http://0.0.0.0:2379 -initial-advertise-peer-urls http…

游戏引擎中ECS架构及内存布局

一.ECS E:Entity-游戏世界中的人,房子等实际物体,这些物体可能由不同的MetaMesh,ParticleSys组成 C:Component-组成实际物体的MetaMesh,ParticleSys,也可以是一个实际物体 S:System-游戏引擎,负责完成实际物体的初始化,内存管理,帧同步,线程同步等核心功能 二.ECS内存布局 1.创…

【企业老总必读】如何监控员工上网行为?监控员工上网的4种方法!人手一个!

想象一下,企业就像一艘大船,每位员工就是水手。但在这片网络海洋中,如何确保每位水手都专注于航行方向,而非偏离航道呢? 答案就是——监控员工上网行为。 今天,我们就来聊聊如何为每位“水手”配备一个“导…

Word、PDF转换为图片Java

Word、PDF转换为图片Java 需求要在小程序端展示文档内容,所以将文档每页转换为图片后显示 参考和其他等方案: https://blog.csdn.net/strggle_bin/article/details/140599514 https://www.modb.pro/db/566986 https://blog.csdn.net/spring_is_comin…

【小白学机器学习16】 概率论的世界观2: 从正态分布去认识世界

目录 1 从正态分布说起 1.1 正态分布的定义 1.2 正态分布的名字 1.3 正态分布的广泛,和基础性 2 正态分布的公式和图形 2.1 正态分布 2.2 标准正态分布 3 正态分布的认识的3个层次 3.1 第1层次:个体的某个属性的样本值,服从正态分布…