当前位置: 首页 > news >正文

软件设计师速通其一:计算机内部数据表示

  • 考试资料推荐 ,这也是大部分图片的出处。本文章主要将视频原本讲的不详细、不便于理解的东西摆开揉碎了给到读者。相信本文能帮您更好更快的学习知识。本文也是您考前快速复习的不二之选。
  • 本文会用星星来表示每个考点的重要性,其中一颗★表示课外拓展,两颗★★表示了解,三颗★★★表示重点。没有星表示重点之下,了解之上。

考试介绍

考试时间与网址

image-20250410164819450

名称级别所属考试考试形式考试时间
软件设计师中级资格全国计算机技术与软件专业技术资格(水平)考试计算机化考试上半年:5月 下半年:11月
  • 报名网址 一般三四月份报名

考试内容

image-20250410165959614

image-20250410165842426

  • 详细内容可见 哔哩哔哩视频

计算机大概认识

image-20250410170256402

进制转化

任意进制与十进制转化

image-20250426092815753

image-20250426092934480

二进制转化为十六进制

image-20250426093035016

计算机内数据表示

image-20250426095319798

image-20250426095404247

原码、反码、补码与移码

image-20250426100134126

  • 在这里机器字长为八位,八位字长被分为一位符号位和七位数值位。符号位在开头,符号位为0则这个数是正数。

image-20250427215117489

  • 正数反码不变,负数方码取反

image-20250427215308625

  • 正数依然不变,负数补码为反码末尾加一。

image-20250427220416441
image-20250427220605652

  • 原码反码取值范围相同,补码移码范围相同
内容原码反码补码移码
定义符号位加上数值的绝对值的二进制表示正数同原码,负数符号位不变,数值位取反正数同原码,负数符号位不变,数值位取反后+1在补码基础上符号位取反(正数+0,负数+2^(n-1))
适用范围人类阅读和理解中间过渡形式,计算机减法运算中使用计算机内部统一的运算编码浮点数阶码表示
处理符号符号位0表示正数,1表示负数同原码同原码移码后符号位为0(统一为无符号数)
主要特点直观,便于理解负数仅数值位取反解决了0有两种表示(+0、-0)的问题便于浮点数大小比较
数值大小关系与实际值一致正负数对应位逐位相反补码可直接用于加减运算符号位统一,按无符号数处理

假设以8位二进制表示数值**-5**:

编码方式二进制表示说明
原码1 0000101符号位1表示负,后面是5的二进制
反码1 1111010数值部分取反(0变1,1变0)
补码1 1111011反码基础上加1
移码0 1111011补码符号位取反(符号位0表示偏移后正数)
为什么要有这么多码?★
  • 因为计算机只有用电流通过与否表示的0和1,使用一堆0与1想要算数,就需要上面各种码。比如原码的反码相加,可以求除两者相减的结果,其他码也是如此

计算:5−3

  • 5 的原码:0 0000101 → 反码:0 0000101(正数反码同原码)
  • 3 的原码:0 0000011 → -3的反码:1 1111100

然后进行加法:

  0 0000101
+ 1 1111100
------------0 0000001 (产生了进位,回补进位)
+         1
------------0 0000010

定点数与浮点数

image-20250427221010069

定点整数
如8位定点整数,可以表示 −128∼127(补码表示)。

定点小数(也叫定点小数格式、定点小数点位置):
例如固定小数点在第4位,数值 0001.0100 表示 1.25。
小数点位置固定,程序或硬件内部默认,不需单独存储小数点

image-20250427221408110

  • 6.75=1.1011×2^2

其中:

  • 尾数(M):1.1011
  • 基数(R):2(表示该数为二进制数)
  • 阶码(E):2

校验码★★

image-20250427222222322

image-20250427222511569

  • 奇偶校验的意思就是添加一位校验位,然后统计除校验位以外的01个数。对于奇校验:如果1的个数是偶数,则校验位为1,使总数变成奇数;如果1的个数已经是奇数,则校验位为0,保持为奇数。

  • CRC算法示例

假设我们使用一个简单的CRC-8算法,生成多项式为:

image-20250427223008720

待校验数据为 101101,我们将数据与多项式做CRC计算。

  • 步骤:
    1. 数据101101与8个零一起构成 10110100000000(这就是填充后的数据)。
    2. 用CRC多项式做除法,计算余数。
    3. 余数就是CRC校验码。

接收方接收到数据后,进行相同的操作,检查余数。如果余数为零,则数据无错误;否则说明数据发生了错误。

海明码★★★

image-20250427223107958

  • 海明码作用与关系是重点

img

你好,我是Qiuner. 为帮助别人少走弯路而写博客 这是我的 github https://github.com/Qiuner⭐ gitee https://gitee.com/Qiuner 🌹

如果本篇文章帮到了你 不妨点个吧~ 我会很高兴的 😄 (^ ~ ^) 。想看更多 那就点个关注吧 我会尽力带来有趣的内容 😎。

代码都在github或gitee上,如有需要可以去上面自行下载。记得给我点星星哦😍

如果你遇到了问题,自己没法解决,可以去我掘金评论区问。私信看不完,CSDN评论区可能会漏看 掘金账号 https://juejin.cn/user/1942157160101860 掘金账号

更多专栏:
  • 📊 一图读懂系列
  • 📝 一文读懂系列
  • 🌟 持续更新
  • 🎯 人生经验

掘金账号 CSDN账号

感谢订阅专栏 三连文章

相关文章:

  • C# wpf
  • 快速上手Prism WPF 工程
  • Python----卷积神经网络(卷积为什么能识别图像)
  • 普通IT的股票交易成长史--20250428晚
  • EXCEL中跨行匹配两组数据
  • C++编程指南39 - 不要特化函数模板
  • 【优秀三方库研读】【性能优化点滴】odygrd/quill 解决伪共享
  • DrissionPage采集京东系列——自动化登录
  • Vue 前端项目部署涉及多个文件和配置
  • 【Vue3-Bug】中路由加载页面直接显示空白
  • 电路研究9.3.2——合宙Air780EP中的AT开发指南:HTTP(S)-PDP的研究
  • 在 IDEA 中写 Spark 程序:从入门到实践
  • java可复用代码
  • web3.js 和 ethers.js 的核心区别
  • 【OSG学习笔记】Day 12: 回调机制——动态更新场景
  • 基于单片机的游泳馆智能管理系统设计与实现
  • shell--数组、正则表达式RE
  • PostgreSQL与MySQL哪个适合做时空数据分析?
  • Foupk3systemX5OS系统产品设备
  • 2025系统架构师---论微服务架构及其应用
  • 长三角铁路“五一”假期运输今启动:预计发送旅客量增6%,5月1日当天有望创新高
  • 国务院任免国家工作人员:饶权任国家文物局局长
  • 央行副行长:增强外汇市场韧性,坚决对市场顺周期行为进行纠偏
  • 上海明天起进入“升温通道”,五一假期冲刺33℃
  • 申花四连胜领跑中超,下轮榜首大战对蓉城将是硬仗考验
  • 预热苏杯,“谁羽争锋”全国新闻界羽毛球团体邀请赛厦门开赛