2.数制与编码

news2024/11/25 16:21:31

目录

一. 进位计数制

(1)二进制,八进制,十进制,十六进制

(2)二进制,八进制,十六进制的转换

(3)十进制转换成任意进制

(4)真值和机器数

二. BCD码

(1)8421码

(2)余3码,2421码

三. 无符号整数的表示和运算

四. 带符号整数的表示和运算

(1)原码

(2)补码

(3)移码

五. 定点小数


数据如何在计算机中表示?运算器如何实现数据的算数、逻辑运算?

一. 进位计数制

(1)二进制,八进制,十进制,十六进制

十进制:0——9反应权重,所在的位置也反应权重:

基于乘法的计数方法(位权):

K_nK_{n-1}...K_1K_0=K_n*10^n+K_{n-1}*10^{n-1}+...+K_1*10^1+K_0*10^0

K_n...K_0.K_{-1}...K_{-m}=K_n*10^n+...+K_0*10^0+K_{-1}*10^{-1}+...+K_{-m}*10^{-m}

推广到r进制:基数:每个数码位所用到的不同符号的个数,r进制的基数为r

K_n...K_0.K_{-1}...K_{-m}=K_n*r^n+...+K_0*r^0+K_{-1}*r^{-1}+...+K_{-m}*r^{-m}

  • 二进制:0,1
  • 八进制:0,1,2,3,4,5,6,7
  • 十进制:0,1,2,3,4,5,6,7,8,9
  • 十六进制:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F

为什么计算机采用二进制存储数据?

  • ①可使用两个稳定状态的物理器件表示
  • ②0,1正好对应逻辑值假、真。方便实现逻辑运算
  • ③可很方便地使用逻辑门电路实现算术运算
     
(2)二进制,八进制,十六进制的转换

由于2^3=8,2^4=16,所以八进制中一位对应二进制中的三位,16进制中的一位对应二进制中的四位。

注意:各种进制的常见书写方式:

(3)十进制转换成任意进制

整数:除基取余法;小数:乘基取整法;

(4)真值和机器数

真值:符合人类习惯的数字
机器数:数字实际存到机器里的形式,正负号需要被“数字化”。

二. BCD码

BCD:Binary-Coded Decimal,用二进制编码的十进制。解决进制转换计算复杂的问题。

基本思想:用4个二进制位表示一位十进制。

(1)8421码

加法运算的修正:如果两位BCD码相加结果落在1010——10010(10-18)范围内,要进行+6修正,这是因为用4个二进制位表示一位十进制有6个冗余。

(2)余3码,2421码

在2421码中,为了避免歧义,5——9的所有首位数字必须是1.

显然,余3码是无权码(因为各位的权值不确定),8421码和2421码都是有权码。

三. 无符号整数的表示和运算

无符号整数,即自然数:0,1,2,3...C语言中通常定义如下:

unsigned short a=1;
unsigned int b=2;

计算机硬件能支持的无符号整数位数有上限,由机器字长决定。

  1. 全部二进制位都是数值位,没有符号位,第i位的位权是2^{i-1}
  2. n bit无符号整数表示范围0~2^{n-1},超出则溢出只保留低位,意味着该计算机无法一次处理这么多;
  3. 可以表示的最小的数全0,可以表示的最大的数全1;
     

计算机硬件如何做无符号整数的加法:从最低位开始,按位相加,并往更高位进位。

计算机硬件如何做无符号整数的减法:“被减数”不变,“减数”全部位按位取反、末位+1,减法变加法。然后从最低位开始,按位相加,并往更高位进位。

四. 带符号整数的表示和运算

无符号整数,即整数:-2,-1,1,2,3...C语言中通常定义如下:

short a=-1;
int b=2;

(1)原码
  • ①符号位“0/1”对应“正/负”,剩余的数值位表示真值的绝对值;
  • ②若机器字长n+1位,带符号整数的原码表示范围:-(2^n-1)\leqslant x\leqslant (2^n-1)
  • ③真值0有两种形式:+0和-0 ,[+0]原=0,0000000;[-0]原=1,0000000;
     

常见书面写法:x=-19,[x]原=1,0010011。若未指明机器字长,也可写为:[x]原=1,10011

原码的缺点:符号位不能参与运算,需要设计复杂的硬件电路才能处理。

(2)补码

计算机硬件如何做补码的加法:从最低位开始,按位相加(符号位参与运算),并往更高位进位。

补码的减法运算:

接下来:对于给定的数,如何求相反数的补码表示?

计算机硬件如何做带符号数补码的减法:“被减数”不变,“减数”全部位按位取反、末位+1,减法变加法。然后从最低位开始,按位相加,并往更高位进位。
 

Tips:计算机内部,所有带符号整数的加、减法都要先转化为补码。原码和反码的合法表示范围完全相同,都有两种方法表示真值0。补码的合法表示范围比原码多一个负数,只有一种方法表示真值0。

常见考点:两个数A和B进行某种运算后,是否发生溢出?——手算做题可以带入十进制验证,是否超出合法范围。

(3)移码

移码:补码的基础上将符号位取反。注意:移码只能用于表示整数。

显然,移码能表示的整数范围与补码相同。

五. 定点小数

定点小数的原码,反码,补码转换和定点整数完全一样(没有移码)。

定点小数的加法,减法计算也同前。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1179431.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

linux命令screen解决client_loop: send disconnect: Broken pipe

一、SSH连接服务器,client_loop: send disconnect: Broken pipe 最近需要在服务器上运行一个需要跑很久的脚本,但ssh连接的远程服务器的命令窗口经常会报:client_loop: send disconnect: Broken pipe,这个错误是ssh 命令之后没有活…

电路布线问题动态规划详解(做题思路)

对于电路布线问题,想必学过动态规划的大家都很清除。今天就来讲解一下这个动态规划经典题目。 目录 问题描述输入分析最优子结构代码 问题描述 在一块电路板的上、下2端分别有n个接线柱。根据电路设计,要求用导 线(i,π(i))将上端接线柱与下端接线柱相…

家用电脑做服务器,本地服务器搭建,公网IP申请,路由器改桥接模式,拨号上网

先浇一盆冷水! 我不知道其他运营商是什么情况。联通的运营商公网IP端口 80、8080、443 都会被屏蔽掉,想要开放必须企业备案(个人不行)才可以。也就是说,只能通过其他端口进行showtime了。 需要哪些东西? 申…

【鸿蒙软件开发】ArkUI容器组件之Grid(网格布局)

文章目录 前言一、Grid1.1 子组件GridItem是什么子组件接口属性事件示例代码 1.2 接口参数 1.3 属性1.4 Grid的几种布局模式1.5 GridDirection枚举说明1.6事件ItemDragInfo对象说明 1.7 示例代码 总结 前言 Grid容器组件:网格容器,由“行”和“列”分割…

php对字符串中的特殊符号进行过滤的方法

1、使用htmlspecialchars函数&#xff1a;此函数将特殊字符转换为对应的HTML实体。示例代码如下&#xff1a; $str "<script>alert(XSS)</script>"; $filtered_str htmlspecialchars($str); echo $filtered_str; 输出&#xff1a; <script>ale…

四阶龙格库塔与元胞自动机

龙格库塔法参考&#xff1a; 【精选】四阶龙格库塔算法及matlab代码_四阶龙格库塔法matlab_漫道长歌行的博客-CSDN博客 龙格库塔算法 Runge Kutta Method及其Matlab代码_龙格库塔法matlab_Lzh_023016的博客-CSDN博客 元胞自动机参考&#xff1a; 元胞自动机&#xff1a;森林…

线性表(顺序表,单链表,双链表,循环链表,静态链表)

目录 1.线性表的定义1.几个重要的概念2.逻辑结构 2.线性表的基本操作3.顺序表&#xff08;线性表的顺序存储&#xff09;1.静态分配2.动态分配3.顺序表的特点4.顺序表的基本操作1.插入2.删除3.查找1.按位查找2.按值查找 4.链表&#xff08;线性表的链式存储&#xff09;1.单链表…

HackTheBox-Starting Point--Tier 1---Funnel

文章目录 一 题目二 实验过程三 利用SSH隧道3.1 本地端口转发 一 题目 Tags FTP、PostgreSQL、Reconnaissance、Tunneling、Password Spraying、Port Forwarding、Anonymous/Guest Access、Clear Text Credentials译文&#xff1a;FTP、PostgreSQL、侦察、隧道技术、密码喷洒…

【笔记】判断高电平,低电平和方波的几种方法

读取某一个上拉电平信号&#xff0c;它可能输出是低电平&#xff0c;可能是高电平&#xff0c;可能是方波&#xff0c;并且这个方波不知道频率何占空比&#xff0c;那么如何来通过程序来判断呢&#xff1f;高电平和低电平都好说&#xff0c;利用HAL库读取即可&#xff0c;如下&…

在云上jupylab(codelab)常用的shell命令

1、切换当前文件目录位置&#xff1a; %cd /project/train/ 2、删除目标文件夹和文件夹下面的内容&#xff0c;注意这个r是不能少的&#xff1a; !rm -r /project/train/src_repo/dataset 3、创建数据集相关文件夹 !mkdir /project/train/src_repo/dataset 4、复制指定…

Pytorch tensor 数据类型快速转换三种方法

目录 1 通用,简单&#xff0c;CPU/GPU tensor 数据类型转换 2 tensor.type()方法 CPU tensor 数据类型转换 GPU tensor 数据类型转换 3 tensor.to() 方法,CPU/GPU tensor 数据类型转换 1 通用,简单&#xff0c; CPU/GPU tensor 数据类型转换 tensor.double()&#xff1a;…

Educational Codeforces Round 157 (A--D)视频详解

Educational Codeforces Round 157 &#xff08;A--D&#xff09;视频详解 视频链接A题代码B题代码C题代码D题代码 视频链接 Educational Codeforces Round 157 &#xff08;A–D&#xff09;视频详解 A题代码 #include<bits/stdc.h> #define endl \n #define deb(x)…

高频SQL50题(基础版)-2

文章目录 主要内容一.SQL练习题1.577-员工奖金代码如下&#xff08;示例&#xff09;: 2.1280-学生们参加各科测试的次数代码如下&#xff08;示例&#xff09;: 3.570-至少有5名直接下属的经理代码如下&#xff08;示例&#xff09;: 4.1934-确认率代码如下&#xff08;示例&a…

C#,数值计算——偏微分方程,Relaxation的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { public class Relaxation { private Relaxation() { } public static void sor(double[,] a, double[,] b, double[,] c, double[,] d, double[,] e, double[,] f, double[,] u, double rjac) …

大型Bat面试知识总结分享—AMS在Android起到什么作用?简单的分析下Android的源码

面试官: AMS在Android起到什么作用&#xff0c;简单的分析下Android的源码 心理分析&#xff1a;这道题在发生在大多数场景下。面对这道题 很多求职很茫然&#xff0c;不知道该如何说起。AMS本身比较复杂难以理解。工作多年也很难弄清AMS的作用&#xff0c;其实我们大可从以下几…

企业数字化转型与供应链效率-基准回归复刻(2007-2022年)

参照张树山&#xff08;2023&#xff09;的做法&#xff0c;本团队对来自统计与决策《企业数字化转型与供应链效率》一文中的基准回归部分进行复刻。文章实证检验企业数字化转型对供应链效率的影响。用年报词频衡量上市公司数字化转型程度&#xff0c;以库存周转天数来衡量供应…

大数据疫情分析及可视化系统 计算机竞赛

文章目录 0 前言2 开发简介3 数据集4 实现技术4.1 系统架构4.2 开发环境4.3 疫情地图4.3.1 填充图(Choropleth maps)4.3.2 气泡图 4.4 全国疫情实时追踪4.6 其他页面 5 关键代码最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 大数据疫…

西门子S7-200SMART 通过向导实现S7通信的具体组态步骤示例

西门子S7-200SMART 通过向导实现S7通信的具体组态步骤示例 具体步骤可参考以下内容: 打开编程软件STEP7-Micro/WIN SMART在“工具”菜单的“向导”"区域单击"Get/Put"按钮,启动PUT/GET向导, 在弹出的“Get/Put”向导界面种添加操作步骤名称并添加注释。 点…

洛谷P1102 A-B数对 详细解析及AC代码

P1102 A-B数对 前言题目题目背景题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 提示题目分析注意事项 代码经典二分&#xff08;O(nlgn)&#xff09;酷炫哈希&#xff08;O(n)&#xff09; 后话额外测试用例样例输入 #2样例输出 #2 王婆卖瓜 题目来源 前言 酷&…

OpenAI 年度大戏即将揭晓,5 大剧透全方位曝光

北京时间 11 月 7 日凌晨 2 点&#xff0c;2023 年度最受关注的 AI 活动 OpenAI DevDay 将正式揭晓。2022 年 11 月&#xff0c;OpenAI 正式发布了 ChatGPT&#xff0c;这个改变整个 AI 发展进程和轨迹的颠覆性产品。OpenAI 选择在 ChatGPT 发布一周年之际举行这次活动&#xf…