计算机语言

机器数

定义

是数字在计算机中的二进制表示形式,机器数是带符号的,在计算机中,用一个数的最高位存放符号,正数为0,负数为1.

特点

一是符号数字化;

二是其数的大小受机器字长的限制。

真值

因为第一位是符号位,所以机器数的形式值就不等于真正的数值。机器数的真值是带符号位的机器数对应的真正的数值。

原码

正数的原码与负数的原码只有符号位不同,其它位都相同

正数的符号位为0,负数的符号位为1

八位二进制的原码取值范围:11111111,01111111即-127,127

+5原=00000101

-5原=10000101

补码

正数的补码是原码本身

负数的补码是在其原码的基础上,符号位保持不变,其余位取反,最后+1,即反码+1

八位二进制的补码取值范围:-128,-127 【110000000补=-128,-128并没有原码和反码】

+5补=00000101

-5补=11111011

反码

正数的反码是原码本身

负数的反码是在其原码的基础上,符号位保持不变,其余位取反

八位二进制的反码取值范围:-127,127

+5反=00000101

-5反= 11111010

正数:原码=补码=反码

负数:补码=反码+1

负数的补码就是绝对值的原码全部取反+1,是负数的本身的数字位按位取反+1

相关推荐
水饺编程4 小时前
第1章,[Win32 章节]:编程环境与 MSDN
c语言·c++·windows·visual studio
wuminyu15 小时前
ForkJoinPool窃取线程在扫描其他WorkQueue时的随机采样算法与Phase线程挂起唤醒机制解析
java·linux·c语言·jvm·c++
Logic10115 小时前
C语言/数据结构欧几里得算法题解:长方形切割最大正方形——贪心划分计数
c语言·数据结构·算法·贪心算法·时间复杂度·空间复杂度·欧几里得算法
老王爱玩车17 小时前
文件操作从打开到缓冲区
c语言·开发语言·学习
Zwawa18 小时前
传感器模块都在交出什么:从模拟电压到数字协议
c语言·单片机·嵌入式
程序员zgh19 小时前
C++ erase() 函数用法
c语言·开发语言·c++·学习
迪丽热爱20 小时前
一、C语言概述与程序结构
c语言·开发语言·算法
殷色玫瑰1 天前
AVL树:从平衡因子到四种旋转的完整实现
c语言·数据结构·c++·算法·visualstudio
沐欣工作室_lvyiyi1 天前
水文信息检测系统的设计与实现(论文+源码)
c语言·单片机设计·柳州工学院·河南工学院·怀化学院·集美大学·辽宁科技学院
007张三丰1 天前
C/C++ 内存管理详解:从内存分布到 new/delete 底层原理
java·c语言·c++·内存管理