计算机的存储单位:
计算机系统数据只用0和1这种表现形式,(这里只表示一个数据点,不是数字),一个0或者1占一个“位”,而系统中规定8个位为一个字节。
电脑的各种存储器的最小的存储单位是比特,也就是位(bit,简称b),它表示一个二进制位。比位大的单位是字节(byte,简称B),它等于8个二进制位。
因为在存储器中含有大量的存储单元,每个存储单元可以存放8个二进制位,所以存储器的容量是以字节为基本单位的。
每个英文字母要占一个字节,一个汉字要占两个字节。
其它常用的单位还有千字节(Kilobyte,简称K或者KB,1KB等于1024B)、兆字节(Megabyte,简称M或者MB,1MB等于1024KB)和吉字节(Gigabyte,简称G或者GB,1GB等于1024MB)。
说道字节肯定要提到字符,那么这两者之间又是怎么回事呢?
字符: 
人们使用的记号,抽象意义上的一个符号。如 '1', '中', 'a', '$', '¥', ……
字节:
计算机中存储数据的单元,一个8位的二进制数,是一个很具体的存储空间。如 0x01, 0x45, 0xFA, ……
区别:通过编码,具体把某一个字符编码成了哪几个字节,我们只需要知道“编码”的概念就是把“字符”转化成“字节”。也就是说,字符是通过字节来实现的。
内存:
程序和数据平常存储在硬盘等存储器上,不管你开机或关机了,它们都是存在的,不会丢失。硬盘可以存储的东西很多,但其传输数据的速度较慢。所以需要运行程序或打开数据时,这些数据必须从硬盘等存储器上先传到另一种容量小但速度快得多的存储器,之后才送入CPU进行执行处理。这中间的存储器就是内存。
无论何种存储器,软盘、硬盘、光盘或者内存,都有地址。因为它们要存储数据,所以就必须按一定的单位的数据分配一个地址。有了地址,程序才能找到这些数据。这很好理解,想想你们家为什么要有门牌号即可。
学习编程,必须对内存的地址有一个透彻的理解。我们编程中的每一行代码,代码中用到的每个数据,都需要在内存上有其映射地址。当然,我们并不需要掌握内存是如何进行编址,那是计算机系中的另外一门课:操作系统的事了。
内存地址:
计算机把所有的信息都给数字化了,所以它知道自已把一个数据,一条命令记到了内存中的哪个(些)位置。
看下面的例子:
如果让计算机在内存里记住“丁小明”这个名字,可以示意为:


 
在第一行中,每一格表示一段内存,而格子里的内容是这段内容记下的数据;第二行中每一格内数字就是对应的内存的地址。
可能有人会啄磨:为什么一个“丁”字(“小”“明”两字也一样)占用两个内存地址呢?这是因为汉字在一个地址(位置)里呆不下,必须放在连续的两个地址空间内。那么,什么东西可以放在单独的一个内存地址里呢?像英文的里字母,比如’A’, 像阿拉伯数字:比如’1’,可以,而且就是放在一个内存地址里。假设有一字符串“ABC”,被记在内存里,可示意为(这次我们假设从内存地址2000H处记起):

现在我们提几个问题:
计算机记住”丁”字的内存地址是多少? 答案是:1000H。请见上图
我们一直在说,在计算机中,所有信息都被数字化为2进制的0、1,所以,“丁小明”这个名字被也应该是一串:0001 0010 0111 0101……,可是在中图所画出的,计算机内存里记的,仍是“丁小明”三个字啊。
下面是解释,我们只举一个字”丁”讲解。我们假设在那一串里的 0001 0010 0111 0101 对应的是 “丁” 字,那么有:


 
让我们把字母’A’对应的图也画出来:


 
 在上面的两个图中:
第一行分别是“丁”和“A”,它是给人看的。
第二行则是一串的的0和1,这才是计算机内存中实际存储的数据。
第三行是内存的地址。并不是每个0和1所占的位置都被编上地址。而是每8个才拥有一个地址。
关于第三行,你可以这样理解,门牌号是一个家庭分配一个,每家每户内还有客厅卧室,这些就没有地址了。
可见:
‘丁’的确是由一串0、1组成的。更确切地,从图上可以看出‘丁’是由16位0和1组成。这16数都存放在2个内存地址里。
‘A’也一样,它是由8位0、1组成的。占1个内存地址。
总结:内存地址是内存当中存储数据的一个标识,并不是数据本身,通过内存地址可以找到内存当中存储的数据。

转载于:https://blog.51cto.com/caixia/861946

计算机存储单位以及内存原理相关推荐

  1. 计算机存储与图片内存占用

    一.存储 计算机存储单位一般用字节(Byte,或B).千字节(KB).兆字节(MB).吉字节(GB).太字节(TB).拍字节(PB).艾字节(EB).泽它字节(ZB,又称皆字节).尧字节(YB)表示. ...

  2. 计算机系统中位和字节表示的含义,计算机存储单位 位、字节、字、KB、MB 分别是什么含义...

    作为一个程序员,日常开发中免不了接触各种计算机存单位,什么字节啦,KB MB 巴拉巴拉一大堆,有的时候还经常把他们给弄混 什么是位.字节.字.KB.MB位(bit):是计算机系统存储中最小的数据存储单 ...

  3. tb计算机存储单位_如何节省数TB的云存储

    tb计算机存储单位 Whatever cloud provider a company may use, costs are always a factor that influences decis ...

  4. 计算机存储单位:bit, Byte, KB, MB, GB, TB, PB, EB, ZB, BB

    一.计算机的存储单位有哪些呢? 计算机存储单位一般用 bit, Byte, KB, MB, GB, TB, PB, EB, ZB, BB来表示, 我们经常将Byte简称为B,将KB简称问K.什么几K了 ...

  5. 计算机存储单位的换算关系

    计算机存储单位的换算关系 1TB=1024GB 1GB=1024MB 1MB=1024KB 1KB=1024B 1B=8b 计算机存储单位一般用bit.B.KB.MB.GB.TB.PB.EB.ZB.Y ...

  6. 计算机存储单位 KB,MB,GB,TB,PB

    计算机存储单位 bit(比特).Byte(字节).千字节(kb kilobyte).兆字节(MB megabyte).吉字节(GB gigabyte).太字节(TB terabyte).拍字节(PB ...

  7. k m kb mb计算机组成,为什么对计算机存储单位(K,M,G,T)换算,总是糊里又糊涂?

    转自:http://www.cnblogs.com/lumnm/archive/2012/02/08/2342374.html 对于计算机专业的童鞋来说,大概对计算机存储单位换转换不算陌生,但是往往有 ...

  8. 计算机怎么化成10的次方,10的n次方换算关系 10^N 计算机存储单位的换算关系

    10的18次方 |艾[可萨] | E 10的15次方 |拍[它] | P 10的12次方 |太[拉] | T 10的 9次方 |吉[咖] | G 10的 6次方 | 兆 | M 10的 3次方 | 千 ...

  9. 计算机存储单位--“大数据”概念

    计算机存储单位一般用B,KB,MB,GB,TB,PB,EB,ZB,YB,BB来表示,它们之间的关系是: 1KB (Kilobyte 千字节)=1024B, 1MB (Megabyte 兆字节 简称&q ...

最新文章

  1. 【OpenGL】向Shader中传递数据
  2. MATLAB中的wavedec、wrcoef函数简析
  3. flink on yarn HA高可用集群搭建
  4. 茶苑机器人怎么看出来_小儿脑瘫怎么看出来?出现4个异常,该早点去看医生...
  5. USB 设备类代码表
  6. django CBV装饰器 自定义django中间件 csrf跨站请求伪造 auth认证模块
  7. 简约风车壁纸自动采集小程序源码
  8. 字符串和datatime.time类型转为秒
  9. 诗与远方:无题(六十二)
  10. tushare数据存入mysql代码_下载股票的历史日交易数据并存入数据库——基于tushare...
  11. JNI 之 HelloWorld
  12. Spring Boot REST 请求(GetMapping,PostMapping)、格式化日期参数、压缩响应内容
  13. Laravel5.1/Homestead (0.2.7) 开发环境的部署和设置
  14. NPOI导出真正的电子表格,支持 自定义多行表头(表头风格设置),支持多个sheet页面导出
  15. 用WPE+CCproxy+自动代理截取安卓游戏封包
  16. 基于word2vec的QA demo
  17. 二期开发立项申请书,已经提交,等待批准!
  18. AMD显卡无法安装驱动
  19. RK3588 实现温控风扇之获取cpu温度(一)
  20. Java视频教程(浙江大学翁恺)

热门文章

  1. 实用js小汇总--获取服务器控件ID
  2. Ubuntu学习日记--Lesson1:Linux基础和常用命令
  3. C++ 常见错误(03) —— cout输出图像路径
  4. linux sed 不输出,linux-使用awk和sed消除不必要的输出
  5. 聊题“谈、闲、想、省”
  6. mui点击添加类名_Mui使用jquery并且使用点击跳转新窗口的实例
  7. 用python读取图像_如何用python获取图像
  8. java spark 环境_在 IntelliJ IDEA 中配置 Spark(Java API) 运行环境
  9. java测试字符串的编码_Java字符串测验
  10. android 开发套件_Android套件