计算机二进制如何转换十六进制(小白入门之计算机数字0和1)

当我们在计算机上输入单词时,它会将它们翻译成数字。事实上,对于计算机来说,所有的信息都是以一串 1 和 0 的形式写入的。计算机数字系统是我们在计算机系统体系结构中表示数字的方式。

数字系统是计算机科学家必须学习的最基本的概念之一。对于任何想成为计算机科学家或程序员的人来说,这都是重要的一步。

今天,我们将向您介绍计算机科学家必不可少的数字系统。我们将深入探讨二进制和十六进制数字系统。

什么是计算机科学中的数字系统?

人类已经计算了很长时间。为此,我们使用将唯一符号与特定值相关联的系统。这称为数字系统,它是我们用来表示和操作数字的技术

数字系统的每个值都必须具有唯一的符号,必须保持一致,提供可比较的值,并且易于重现。

您可能最熟悉构成人类计数基础的十进制系统。十进制以 10 为底,因为它提供 10 个符号来表示所有数字:

计算机二进制如何转换十六进制(小白入门之计算机数字0和1)(1)

人类使用十进制是因为我们有 10 个手指可以指望,但机器没有那么多。因此,我们创建了执行相同功能的其他数字系统。计算机代表信息的方式与人类不同,因此我们需要不同的系统来代表数字。

计算机支持以下数字系统:

  • 二进制
  • 八进制
  • 十进制
  • 十六进制
二进制数系统简介

计算机使用来表示信息。位是计算机中最基本的存储单位。计算机的一个重要组成部分称为晶体管。就像电灯开关一样,晶体管允许或阻止电流流动。所以,它只有两种状态:onoff

计算机中的每个数字都是电信号。在计算机的早期,电信号用“开”状态(负电荷)和“关”状态(正电荷)表示。这形成了一种二进制开关。

这两个状态可以使用两个符号之一表示:10。这意味着二进制数字系统的基数是 2。只需要符号来表示每个数字。

二进制系统的基本数字很简单:0 代表低状态,1 代表高状态。

我们不是将数字表示为单独的单位(如数字 10 或 400),而是使用 1 和 0 的组。例如,这是计算机从 0 数到 10 时的样子:

计算机二进制如何转换十六进制(小白入门之计算机数字0和1)(2)

这称为二进制数字系统。每个二进制数字称为一个。例如,0110由 4 位组成,分别是0110。当谈到为这个系统中的位(即数字)赋值时,我们从右到左放置与 2 的升幂相对应的值。

最右边的位称为最低有效位 (LSB),最左边的位称为最高有效位 (MSB)

您可以使用按位运算符左右操作位,以在机器代码级别有效地更改数字的值。

十进制和二进制之间的转换

现在我们了解了二进制系统的基础知识,让我们学习如何在十进制和二进制之间进行转换。我们从二进制到十进制的转换开始。

我们知道二进制系统具有 2 的幂位值。这些值是这些位置上数字(0 或 1)的权重。它是这样工作的:

  • 我们将每个数字乘以它的权重(它的位置乘以 2)
  • 我们将它们全部加起来得到十进制数

所以,让我们把二进制数 11111010 转换成十进制数。

--->

计算机二进制如何转换十六进制(小白入门之计算机数字0和1)(3)

现在让我们反过来试试。我们如何将十进制数转换为二进制数?一种方法是重复除法,这是一个方便的捷径。

因此,以数字 19 为例。我们先将其除以二,然后记下余数。当我们将 19 除以 2 时,我们得到 9,余数为 1。

然后我们将 9 除以 2,结果为 4,余数为 1。这个过程一直持续到我们达到零。我们收集的余数构成了我们的二进制数!

计算机二进制如何转换十六进制(小白入门之计算机数字0和1)(4)

反复除以 2 并记录余数是将十进制转换为二进制的捷径!

十六进制数系统简介

现在我们已经了解了一些关于二进制系统的知识,让我们了解计算机使用的另一种常用系统:十六进制数系统

二进制数对计算机来说很容易,但对人类来说却不是那么容易理解。当您处理大量数据时,要准确无误地编写代码会变得很困难。所以,为了解决这个问题,我们可以将二进制数分成四位一组,形成十六进制数系统。

十六进制系统是一种在计算机上表示数字的更紧凑的方式,因为它只需要 4 位来表示一个数字的值。

十六进制(通常称为“十六进制”)由16 个符号组成,因此它的基数为 16。十六进制使用十进制的 10 个数字和六个额外的符号,A、B、C、D、E 和F。

十六进制的位值是 16 的幂。让我们看看十六进制数 XYZ 的十进制数是多少。正如您在下面看到的,十六进制数前面有一个#,表示它们是 base-16。

计算机二进制如何转换十六进制(小白入门之计算机数字0和1)(5)

如何在二进制和十六进制之间转换

现在我们了解了二进制和十六进制数系统,让我们学习如何在二进制数和十六进制数之间进行转换。我们从二进制到十六进制开始。

我们将把二进制数字分成四组(从右边开始)。然后,我们用相应的十六进制表示替换每个四重奏。

计算机二进制如何转换十六进制(小白入门之计算机数字0和1)(6)

--->

计算机二进制如何转换十六进制(小白入门之计算机数字0和1)(7)

--->

计算机二进制如何转换十六进制(小白入门之计算机数字0和1)(8)

现在十六进制转二进制!让我们来看一个例子。下面,我们通过将其替换为等效的二进制四位来扩展每个十六进制数字。

--->

计算机二进制如何转换十六进制(小白入门之计算机数字0和1)(9)

--->

计算机二进制如何转换十六进制(小白入门之计算机数字0和1)(10)

什么是八进制数系统?

八进制数系统不像二进制的十六进制那样被广泛使用。它是在与十六进制系统相同的思想下开发的:使二进制更紧凑

八进制系统将二进制数分组为三元组而不是四元组。因此,八进制系统是base-8,如2^3 = 8

我们使用八进制系统的八个基本符号,这些符号是从十进制系统借来的。二进制三元组的值范围为0-7

因此,位值将从右到左以8的幂递增。

要将二进制转换为八进制,我们遵循以下基本技术:

  • 将二进制数分成三组(类似于我们对十六进制所做的)
  • 通过添加零使每组数字成为三的倍数
  • 在每组下方写上相应的八进制符号
  • 你现在将有一个八进制数

八进制转换为二进制是类似的,但更简单一些:

  • 写出每个八进制数字的二进制表示
  • 将这些数字连接在一起
  • 你不会有二进制数
接下来要学什么

恭喜!您现在已经对计算机科学的数字系统有了扎实的介绍。您已经迈出了进入计算机编程领域的第一步。然而,仍有许多东西需要学习。您的下一步是学习:

  • 如何创建自己的数字系统
  • 二元运算
  • 有符号二进制数
  • 定点符号
  • 位和字节的基础知识
  • ASCII码
  • 统一码
  • 计算机内存基础

一旦您涵盖了这些主题,您就可以很好地理解计算机了!要开始了解这些概念并更详细地探索二进制、十六进制和八进制,请查看 Educative 的计算机科学家课程数字系统,其中涵盖了所有这些内容以及更多内容。

您将了解基本的数字系统,并学习如何用二进制表示和操作正数、负数和小数。不需要编程知识,所以今天就开始吧,开始你作为计算机科学家的职业生涯。

快乐学习!

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页