zoukankan      html  css  js  c++  java
  • 数据在内存中的存储(二进制形式存储)

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

    要想学习编程,就必须了解二进制,它是计算机处理数据的基础。

    内存条是一个非常精密的部件,包含了上亿个电子元器件,它们很小,达到了纳米级别。这些元器件,实际上就是电路;电路的电压会变化,要么是 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、语、言、中、文、网 这几个字,那么结合起来 1101000 00011100 11111111 00000000 01010101 10101010 就表示”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,就是这个意思。

    单位换算:

    • 1Byte = 8 Bit
    • 1KB = 1024Byte = 210Byte
    • 1MB = 1024KB = 220Byte
    • 1GB = 1024MB = 230Byte
    • 1TB = 1024GB = 240Byte
    • 1PB = 1024TB = 250Byte
    • 1EB = 1024PB = 260Byte


    我们平时使用计算机时,通常只会设计到 KB、MB、GB、TB 这几个单位,PB 和 EB 这两个高级单位一般在大数据处理过程中才会用到。

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

    我们将在《C语言调试》中的《查看、修改运行时的内存》一节教大家如何操作C语言程序的内存。

    程序员的幽默

    为了加深印象,最后给大家看个笑话。

    程序员A:“哥们儿,最近手头紧,借点钱?”

    程序员B:“成啊,要多少?”

    程序员A:“一千行不?”

    程序员B:“咱俩谁跟谁!给你凑个整,1024,拿去吧。”

    你看懂这个笑话了吗?请选出正确答案。

    A) 因为他同情程序员A,多给他24块
    B) 这个程序员不会数数,可能是太穷饿晕了
    C) 这个程序员故意的,因为他独裁的老婆规定1024是整数
    D) 就像100是10的整数次方一样,1024是2的整数次方,对于程序员就是整数

  • 相关阅读:
    The Quad
    将OrCAD Capture CIS的设计文件(.dsn)导入到PADS Logic VX.2.3
    OrCAD Capture CIS 16.6 将版本16.6的设计文件另存为版本16.2的设计文件
    Eclipse IDE 添加jar包到Java工程中
    PADS Logic VX.2.3 修改软件界面语言
    切换Allegro PCB Editor
    Allegro PCB Design GXL (legacy) 将brd文件另存为低版本文件
    Allegro PCB Design GXL (legacy) 设置自动保存brd文件
    Could not create an acl object: Role '16'
    windows 下apache开启FastCGI
  • 原文地址:https://www.cnblogs.com/HGNET/p/11751696.html
Copyright © 2011-2022 走看看