文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

C语言入门须知:二进制以及数据存储

lzzyok小精灵

lzzyok小精灵

2024-04-17 23:01

关注

  在学习C语言之前,我们首先必须要掌握二进制的思想以及数据的储存知识,这对于我们的编程来说十分的重要!一般来说,大家平时使用的数字都是由0~9共十个数字组成的,例如1、9、10、297、952等,一个数字最多能表示九,如果需要表示十位以上的数字,我们还有十位数、百位数、以及千位数等等。

  就好像我们要表示5+8的结果,一个数字不够,只能进位,用13来表示;这时进一位相当于十,进两位相当于二十。

  而我们常用的这个进位的方法就叫做十进制(Decimalism)。在这里小编为大家科普一下:进制也就是进位制。在进行加法(减法)运算时,逢X进(借)一就是X进制,这种进制也就包含X个数字,基数为X。十进制有0~9共10个数字,基数为10,在加减法运算中,逢十进一,借一当十。所以我们称之为十进制。

  假如我们可以用0~9共十个数字来表示数值,那么当然我们也可以用0、1两个数字来表示数值,这就是我们今天要讲到的二进制(Binary)。

  首先我们来讲一下什么是二进制思想

  二进制只有0和1两个数字,基数为2,在加减法运算中,逢二进一,借一当二。

  下面我们来看一下具体的数例:

  表示数值:0、1、10、111、100、1000001

  加法:1+0=1、1+1=10、10+110=1000、111+111=1110、

  减法:1-0=1、10-1=1、100-11=1、1010-101=101

  C语言入门须知:二进制以及数据存储_二级等级考试_C语言试题_c语言考试_编程学习网

  假如我们要进行二进制和十进制的转换:

  十进制4321=4×103+3×102+2×101+1×100

  二进制1101=1×23+1×22+0×21+1×20=8+4+0+1=13

  二进制110.11=1×22+1×21+0×20+1×2-1+1×2-2=4+2+0+0.5+0.25=6.75

  为了让大家更加详细了解二进制加减法的运算过程,我们提供了两张示意图。

  1)二进制加法:0001+0001=0010

  二进制加法

  2)二进制减法:0010-0001=0001

  二进制减法

  而在我们的内存中,数据就是以二进制的形式存储的。

  接下来我们来了解一下内存中数据的存储。

  大家可能并不了解,其实计算机要处理的信息是多种多样的,如十进制数、文字、符号、图形、音频、视频等,这些信息在人们的眼里是不同的。但对于计算机来说,它们在内存中都是一样的,都是以二进制的形式来表示。

  所以我们必须了解二进制后才能够更好地学习编程,因为它是计算机处理数据的基础。

  需要大家理解的是内存条是一个非常精密的部件,包含了上亿个电子元器件,所以这些元件小到基本达到了纳米级别,而它们实际上就是电路;电路的电压会变化,要么是0V,要么是5V,只有这两种电压。5V是通电,用1来表示,0V是断电,用0来表示。按这个原理推想,一个元器件有2种状态,0或者1。

  所以当我们通过电路来控制这些元器件的通断电,会得到很多0、1的组合。举个例子:8个元器件有28=256种不同的组合,16个元器件有216=65536种不同的组合。尽管一个元器件只能表示2个数值,但是多个结合起来就可以表示很多数值了。

  根据以上的原理:我们可以给每一种组合赋予特定的含义,例如,可以分别用1101000、00011100、11111111、00000000、01010101、10101010来表示C、语、言、中、文、网这几个字,那么结合起来11010000001110011111111000000000101010110101010就表示”C语言中文网“。

  但是在一般情况下我们不一个一个的使用元器件,而是将8个元器件看做一个单位,即使表示很小的数,例如1,也需要8个,也就是00000001。

  所以我们通常将1个元器件称为1比特(Bit)或1位,8个元器件称为1字节(Byte),那么16个元器件就是2Byte,32个就是4Byte,以此类推我们就可以得出:

  8×1024个元器件就是1024Byte,简写为1KB;

  8×1024×1024个元器件就是1024KB,简写为1MB;

  8×1024×1024×1024个元器件就是1024MB,简写为1GB。

  现在,你知道1GB的内存有多少个元器件了吧。所以我们通常所说的文件大小是多少KB、多少MB,就是这个意思。

  下面我们来了解一下具体的单位换算:

  8Bit=1Byte

  1024Byte=1KB

  1024KB=1MB

  1024MB=1GB

  1024GB=1TB

  所以在内存的思想中是没有abc这样的字符或者gif、jpg这样的图片的,只有0和1两个数字,计算机也只认识0和1。所以我们计算机只能使用二进制,而不是我们熟悉的十进制,所以被写入内存中的数据都会被转换成0和1的组合。

  怎么样,对于二进制的思想和数据的储存大家理解的怎么样呢?希望通过本文的学习大家能知道0和1怎么样组合,普通的加减法也能够算出二进制的数值,知道1GB的内存有多少个元器件。希望本文对大家有所帮助!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     674人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     304人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     262人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     364人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     169人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-考试认证-考试信息-考试报考
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯