前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >(二)《数字电子技术基础》——数制

(二)《数字电子技术基础》——数制

作者头像
小点点
发布于 2022-12-12 06:16:30
发布于 2022-12-12 06:16:30
1.6K0
举报
文章被收录于专栏:小点点小点点

目录

数制介绍

数制转换

各进制转换为十进制

十进制转换为其他进制

十进制转二进制

十进制转其他进制

二进制与八进制之间的转换

二进制转八进制

八进制转二进制

二进制与十六进制之间的转换       

二进制转十六进制

十六进制转二进制

八进制与十六进制之间的转换

二进制正负数及其表示

二进制算术运算

二进制正负数的表示法

二进制正负数的顶点浮点表示法

二进制数补码及其运算

二进制数三种表示法​​​​​​​

反码补码运算性质

二进制数补码运算


数制介绍

        数制:所谓数制( Number Systems ),是指多位数码中每一位的构成方法以及从低位到高位的进位规则。

数字系统中经常使用的数制有:

  • 十进制(D: Decimal)
  • 二进制(B: Binary)
  • 八进制(O: Octal)
  • 十六进制(H: Hexadecimal)等

        由于目前在微型计算机系统中普遍采用8位、16位、32位二进制并行运算,而8位、16位、32位二进制数可以用2位、4位、8位十六进制数表示,因而用十六进制符号书写程序十分方便,成为当前的主流程序书写模式。

数制转换

各进制转换为十进制

十进制转换为其他进制

十进制转二进制

        整数部分:除基取余,逆序排列。也就是将数除2,取基数再除,将最后得到的余数逆序排列,也就是从后往前,具体证明如下所示。

        小数部分:乘基取整,顺序排列。具体说就是将小数部分乘2,取整数部分,从上往下读取,证明过程如下所示。

十进制转其他进制

        将十进制转换为R进制的方法:整数部分采用基数 (R)除法,即除基(R)取余,逆序排列;小数部分采用 基数(R)乘法,即乘基(R)取整,顺序排列,与十进制转二进制类似,就不做过多介绍。

二进制与八进制之间的转换

二进制转八进制

        把二进制数从小数点开始分别向右和向左分成三位一组,每组便是一位八进制;若不能正常构成三位一组,则在二进制整数部分高位添零或在小数点低位添零来补足三位一组。

八进制转二进制

        将各八进制数按位展成三位二进制数即可。

二进制与十六进制之间的转换       ​​​​​​​

二进制转十六进制

        把二进制数从小数点开始分别向右和向左分成四位一组,每组便是一位十六进制数;若不能正常构成四位一组,则在二进制整数部分高位添零或在小数点低位添零来补足四位一组。

十六进制转二进制

        将各十六进制数按位展成四位二进制数即可。

八进制与十六进制之间的转换

        八进制与十六进制之间的转换的话,一般是通过二进制作为中介,再进行转换。

二进制正负数及其表示

二进制算术运算

        在数字电路中,1位二进制数码的0和1 不仅可以表示数量的大小,而且可以表示两种不 同的逻辑状态:

  • 当两个二进制数码表示两个数量大小时, 它们之间的数值运算称为算术运算;
  • 当两个二进制数码表示不同的逻辑状态 时,它们之间可以按照某种因果关系进行所谓的 逻辑运算(后续章节讲解)。

二进制的运算特点:

  •  二进制数的乘法运算可以通过若干次的“被乘数 (或0)左移1位”和“被乘数(或0)与部分积相加” 这两种操作来完成;
  • 二进制数的除法运算可以通过若干次的“除数右移1位”和“从被除数或余数中减去除数”这两种操作来完成。

二进制正负数的表示法

在数字电路和数字电子计算机中,二进制数的正、负号也用“0”和“1”表示。 一般,正号用“0”表示,负号用“1”表示

二进制正负数的顶点浮点表示法

任何数制的数N,均可以表示为:N=R^E×M。

定点表示法:即小数点的位置在数中是固定不变的。 在定点运算的情况下,以最高位作为符号位,正数为0, 负数为1,定点表示可分为整数定点和小数定点,和 C 语言里的整形与浮点型有点类似,可以理解为小数点位置不变。

浮点表示法:即小数点的位置可以变化,结合下面这张图来理解一下,第一个Ef()代表的是指数部分的正负符号,第二个E()代表的是指数的大小,第三个S()表示的是数的正负,第四个E()代表的是数值。

二进制数补码及其运算

二进制数三种表示法

        在数字电路中,二进制正负数的表示法有原码 (Sign-magnitude)、反码(One’s Complement)和补码 (Two’s Complement )三种表示法。

        原码:二进制的原码与真值有直接的对应关系,即用二进制的最高位表示符号,且0表示正,1表示负,其余各位用以表示绝对值,并称数值位,构成带符号的二进制数,这种表示方法称为原码。 

        反码:也称为1的补码,其表示方法如下:

 可以理解为负数除了符号位外,按位取反。

        补码:也称为2的补码,其表示方法如下:

可以理解为负数的补码等于其反码加一。

最后,再对这三种表示法进行一个总结。

反码补码运算性质

二进制数补码运算

        在数字电路中,用原码运算求两个正数M和N的差值M-N时,首先要对减数和被减数进行比较,然后由大数减去小数,最后决定差值的符号,完成这个运算,电路复杂,速度慢。所以常用补码来实现减法运算。         设A和B依次为被加数(或被减数)和加数(或减数),用补码实现加/减运算的步骤如下:

  1. 把A与B(减法时为-B)均表示成补码形式;
  2. 两个补码相加,且把符号位也看成二进制的最高 位参与运算;
  3. 若和数的最高位有进位,将该进位舍弃

         好了,关于数制的知识点就介绍到这,本身难度不大,但需要掌握。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-07-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【愚公系列】软考高级-架构设计师 003-进制的转换
进制转换是指将一种数制表示的数转换为另一种数制表示的过程。在计算机科学和日常生活中,最常见的数制包括二进制、十进制、八进制和十六进制。每种数制都有其特定的基数(Base),如二进制的基数是2,十进制的基数是10,八进制的基数是8,十六进制的基数是16。不同的数制在表示数字时使用的字符和计数规则不同。
愚公搬代码
2024/05/08
3080
数据的表示:原码、反码、补码、移码以及浮点数的运算
最近在备战软考,复习到数据表示方面相关的知识,所以在这里做一下记录,也方便大家参考。
村雨遥
2021/10/11
2.6K0
数据的表示:原码、反码、补码、移码以及浮点数的运算
图解计算机中数据的表示形式
作者个人研发的在高并发场景下,提供的简单、稳定、可扩展的延迟消息队列框架,具有精准的定时任务和延迟队列处理功能。自开源半年多以来,已成功为十几家中小型企业提供了精准定时调度方案,经受住了生产环境的考验。为使更多童鞋受益,现给出开源框架地址:
冰河
2021/02/05
3K0
图解计算机中数据的表示形式
《软考系统架构师笔记》之计算机系统知识
运算器功能:执行所有的算术运算,如加减乘除等;执行所有的逻辑运算并进行逻辑测试,如与、或、非、比较、移位等
星宇大前端
2021/03/21
1.1K0
进制之间的转换
今天翻了一本计算机基础的书籍,其中十进制、二进制、八进制、十六进制之间的转换挺有意思的,也容易犯糊涂,特温故而知新。 十进制数制系统 十进制数制系统包括 10 个数字:0、1、2、3、4、5、6、7、8、9 基为:10 逢十进一,如3+7=10,20+80=100 二进制数制系统 计算机中使用二进制表示数据 二进制包括两个符号:0和1 二进制逢二进一:(1+1)2=(10)2 二进制的基为2 示例:1000101100101101 八进制数制系统 用于缩短二进制的数字长度
猿人谷
2018/01/17
1.1K0
进制之间的转换
「计算机基础」你可能知道二、八、十六进制,但原、补、反码也知道吗
在生活中,我们通常都是使用阿拉伯数字计数的,也就是10进制,以10为单位,遇10进一,所以是由0,1,2、3、4、5、6、7、8、9这个10个数字组成的;而在计算机中,计算机是无法识别10进制数的,它只能识别0和1,也就是二进制,由0、1两位数字组成,其运算规则是逢二进一。
老夫编程说
2020/04/25
2.7K0
「计算机基础」你可能知道二、八、十六进制,但原、补、反码也知道吗
【计组不挂科】计算机组成第二章< 数据的表示&运算方法&运算部件 >习题库(选择题&判断题&填空题)(含答案与解析)
A.指令和数据都以十进制形式存放 B.指令和数据都以二进制形式存放 C.指令以二进制形式存放,数据以十进制形式存放 D.指令以十进制形式存放,数据以二进制形式存放
YY的秘密代码小屋
2024/11/30
2010
【C#学习笔记03】进制转换与反码、补码、原码
计算机中的数据通常以二进制形式存储,但在编程和调试过程中,我们经常需要与十进制、八进制和十六进制打交道。因此,掌握进制转换是C语言学习中的重要一环。
一条晒干的咸鱼
2025/03/12
1540
【C#学习笔记03】进制转换与反码、补码、原码
FPGA零基础学习:数字电路中的数字表示
大侠好,欢迎来到FPGA技术江湖。本次带来FPGA系统性学习系列,本系列将带来FPGA的系统性学习,从最基本的数字电路基础开始,最详细操作步骤,最直白的言语描述,手把手的“傻瓜式”讲解,让电子、信息、通信类专业学生、初入职场小白及打算进阶提升的职业开发者都可以有系统性学习的机会。
FPGA技术江湖
2021/03/12
7120
FPGA零基础学习:数字电路中的数字表示
【C语言篇】数据在内存中的存储(超详细)
这是因为所有进制位权重,比如21,162,84,这些都是十进制数,也就是我们在转换过程中使用的都是十进制作为位权来进行的,所以最后转换出来的一定是十进制数
半截诗
2024/10/09
3360
【C语言篇】数据在内存中的存储(超详细)
十进制转换为二,八,十六进制_vb进制转换
进制转换是人们利用符号来计数的方法。进制转换由一组数码符号和两个基本因素“基数”与“位权”构成。
全栈程序员站长
2022/11/07
1.5K0
十进制转换为二,八,十六进制_vb进制转换
为什么计算机中的负数要用补码表示?
在前面的文章里,我们聊到了计算机的冯·诺依曼架构的 3 个基本原则。其中第 1 个原则是计算机中所有信息都是采用二进制格式的编码。也就是说,在计算机中程序的数据和指令,以及用户输入的所有数据,计算机都需要把它们转换为二进制的格式,才能进行识别和运算。
用户9995743
2022/12/22
3.2K0
为什么计算机中的负数要用补码表示?
Java进制
定义 进制也就是进位计数制,是人为定义的带进位的计数方法。 十进制是逢十进一,十六进制是逢十六进一,二进制就是逢二进一,以此类推,x进制就是逢x进位。 常用进制类型 二进制 计算机底层都是使用二进制进行存储以及运算 0b****;(以0b或者0B开始,*表示0或1)比如:010101 原码、反码、补码 原码 原码:将一个整数转换成二进制表示 以 int 类型为例,int类型占4个字节、共32位。 例如: 2 的原码为:00000000 00000000 00000000 00000010
Java架构师必看
2021/07/16
3900
软考:数值转换知识点详解
进制转换是数值转换的基础,涉及到不同数制之间的相互转换。在计算机科学中,二进制是最基本的数制,因为计算机内部使用二进制来存储和处理数据。然而,人类更习惯于使用十进制,而十六进制则因其简洁性在表示二进制数据时非常常用。
码事漫谈
2025/04/24
1190
软考:数值转换知识点详解
一文读懂原码、反码与补码
二进制和十进制一样,也是一种进位计数制,但是它的基数是 2。二进制表达式中 0 和 1 的位置不同,它所代表的数值也不同。例如,二进制数 0000 1010 表示十进制数 10。一个二进制数具有两个基本特点:两个不同的数字符号,即 0 和 1,逢二进一。
阿宝哥
2020/01/14
3.1K0
一文读懂原码、反码与补码
【C语言基础】:操作符详解(一)
C语言中,操作符分为算术操作符、赋值操作符、逻辑操作符、条件操作符和单目操作符等等。
爱喝兽奶的熊孩子
2024/04/10
6000
【C语言基础】:操作符详解(一)
数制
数制是整个数字逻辑的基础,计算机只识别0,1。因此如何将我们现实生活中常用的十进制数转换为二进制,或者其他进制,以及掌握常用的几种数制是我们本篇文章的重点。 一、数制 十进制: (1)计数符号:
mathor
2018/06/22
1.3K0
【C语言】操作符详解1(含进制转换,原反补码)
    上述的操作符,我们已经讲过算术操作符、赋值操作符、逻辑操作符、条件操作符和部分的单⽬操作符,今天继续介绍⼀部分,操作符中有⼀些操作符和⼆进制有关系,我们先铺垫⼀下⼆进制的和进制转换的知识
TANGLONG
2024/10/15
2480
【C语言】操作符详解1(含进制转换,原反补码)
2.5万字54张图爆肝计算机与操作系统基础!!(建议收藏)
最近发现很多小伙伴工作很久了,大部分工作都是在重复的进行CRUD,对于一些基础性的知识,比如:计算机基础知识,操作系统,数据结构和算法等,却了解的少之又少。其实,很多时候,这些基础性的知识往往是造成程序员职业生涯瓶颈的一个重要的因素。所以,冰河强烈建议这些基础知识越早知道越好,越早掌握越好!最好是在大学时期就充分掌握这些计算机基础知识。
冰河
2021/04/30
1.2K0
计算机常用的数制及编码
我们习惯使用的十进制数是由0、1、2、3、4、5、6、7、8、9十个不同的符号组成,每一个符号处于十进制数中不同的位置时,它所代表的实际数值是不一样的。例如1999年可表示成
张哥编程
2024/12/17
2180
推荐阅读
相关推荐
【愚公系列】软考高级-架构设计师 003-进制的转换
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档