C语言存数据

原码

数据的表现形式有三种:原码、反码、补码

计算机存储数据是用补码 进行存储的,但是我们看书的数据通常是原码

我们以 1 个字节为例,讲解原理

对于原码,分为有符号数据和无符号数据

无符号数:15

原码表示:0000 1111

有符号数:+15

原码表示:0000 1111

-15

1000 1111

最高位表示符号位,0 为正,1 为负

反码

反码是用于由原码求补码或者由补码求原码的过渡码

无符号数:反码 = 原码

有符号数:+15 反码 = 原码

原码:0000 1111

反码:0000 1111

-15 反码 = 原码符号位不变,其余数据位取反

原码:1000 1111

反码:1111 0000

补码

在计算机系统中,数值一律用补码来存储

无符号数:补码 = 反码 = 原码

有符号数:+15 补码 = 反码 = 原码

原码:0000 1111

反码:0000 1111

补码:0000 1111

-15 补码 = 反码 + 1

原码:1000 1111

反码:1111 0000

补码:1111 0001

相关推荐
GeekyGuru1 分钟前
C#:游戏开发的高效利器
开发语言·c#
涔溪2 分钟前
深入了解 Node.js 性能诊断工具 Clinic.js 的底层工作原理
开发语言·javascript·node.js
JienDa3 分钟前
JienDa聊PHP:PHP 8革命性特性深度实战报告:枚举、联合类型与Attributes的工程化实践
android·开发语言·php
.小小陈.4 分钟前
C++初阶5:string类使用攻略
开发语言·c++·学习·算法
JSON_L7 分钟前
PHP安装GMP扩展
开发语言·php
!停7 分钟前
深入理解指针(1)
c语言
向葭奔赴♡13 分钟前
Android AlertDialog实战:5种常用对话框实现
android·java·开发语言·贪心算法·gitee
小年糕是糕手14 分钟前
【C++】类和对象(六) -- 友元、内部类、匿名对象、对象拷贝时的编译器优化
开发语言·c++·算法·pdf·github·排序算法
大佬,救命!!!17 分钟前
C++本地配置OpenCV
开发语言·c++·opencv·学习笔记·环境配置
sinat_6020353618 分钟前
翁恺 9取地址运算
c语言