lesson 3 内存

原创 2016年08月28日 14:53:43

  程序员主要和内存打交道

  内存的物理结构

  ROM:只能读取 ,早期的手机操作系统放在ROM中

  RAM:能够读取和写入, DRAM(经常更新) SRAM(不经常更新) ,里面的数据断电即消

  

  内存中把引脚分为: 电源 、地址 (决定寻址能力、)数据 、控制   四大类


  例如一个芯片有:A0到A9 10个地址引脚 ,可以表示 1024个地址

                                  D0到D7 8个数据引脚, 能接受8个数据信号,一次可以输出或输入的数据量 ,  8bit= 1byte

当前芯片的容量是 1024×1 byte =1KB 能存储1kb的数据

往内存写数据

     首先给芯片两边分别接入5V,0V的电压,如果当前的地址是0001111000,通过它找到芯片当中指定的位置,找到指定的存储场合,然后再将我们的电流信号写入数据引脚 (比如是00001111),(1的位置接高电平)再给WR置1 指定的地址就会写入指定的值.

     所以写内存必须按照一定的格式写。


内存的逻辑结构

   把内存比如一间间存储数据的楼房,通过地址引脚,每个楼房都有楼层和门牌号。 每层都有编号,就是地址。每个楼层的大小由数据引脚来决定的。

         

         char = 1 byte   一层能放下

         int = 4    byte  把四层打包成一层,取首楼层地址(比如 0011),楼层的编号还是存在的


为什么 数组的访问数据最快

     内存地址都是从上往下累加的,累加一步步来, 数组存一个连续的数据 ,取的时候只需要拿到首地址,然后依次挨个往后取。这种架构非常符合内存的结果, 操作效率非常高,按照当前整个数据的模式来依次找,当需要访问或删除里面数据,只要取到首地址,通过首地址来进行偏移,只需要取一次数据。


为什么 要提出栈和队列

     如果要删除其中一个数据,CPU首先寻找到首地址,偏移到删除位置,删掉。然后把其他数据往前移。就会很慢。因此设计了其他数据结构。

      

栈:      用于数据记录   FILO  先进后出   入栈   出栈

队列 : 按照进去的顺序挨个拖出来

链表 : 存储了数据和指针(数据地址) ,通知指针指向找到下一个值,方便删除,只需要改指针指向的地        址。

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

Codility Lesson 3 MinAvgTwoSlice解答

*大多数朋友如果找到这篇文章,就是来看解答的,所以完整的题目放到文章的最后了。 思路: 1、首先根据题目,大家第一反应就是无脑嵌套遍历所有情况,这样的时间复杂度是O(n^2+n)/2,远远超出O(...
  • dear0607
  • dear0607
  • 2015年01月10日 10:15
  • 676

Lesson 3 Sorry,Sir

Listen to the tape then answer this question.Does the man get his umbrella back?My coat and my umbre...
  • luchengchuan
  • luchengchuan
  • 2007年03月28日 15:42
  • 197

js+html(my first lesson)

我们写一个网页,不仅仅是用来显示,对于使用者而言,交互或许更重要,这就需要Javascript的灵活使用咯。Javascript与HTML,CSS是构成网页的三大元素。HTML是框架,CSS是样式,J...
  • sky_snow45
  • sky_snow45
  • 2015年04月29日 16:53
  • 353

Lesson One - Twelve Things I Wish They Taught at School

Vocabulary Exercises
  • yunlong202
  • yunlong202
  • 2014年09月22日 20:46
  • 379

Lesson 3

java使用jdbc连接数据库,数据库为mysql,随机产生一万个号码放入数据库中import java.sql.Connection;import java.sql.DriverManager;im...
  • csfu18
  • csfu18
  • 2011年01月17日 08:47
  • 892

lesson 3

  • guanyudatou
  • guanyudatou
  • 2010年03月24日 09:23
  • 260

Codeforces Round #392(Div. 2) C Unfair Poll【思维+暴力】

C. Unfair Poll time limit per test 1 second memory limit per test 256 megabytes input st...
  • mengxiang000000
  • mengxiang000000
  • 2017年01月20日 14:14
  • 553

Codeforces 842 D. Vitya and Strange Lesson (trie)

Description Today at the lesson Vitya learned a very interesting function — mex. Mex of a sequence...
  • qq_28954601
  • qq_28954601
  • 2017年08月30日 16:17
  • 542

Codeforces Round #392 (Div. 2)C. Unfair Poll

C. Unfair Poll time limit per test 1 second memory limit per test 256 megabytes inp...
  • jerans
  • jerans
  • 2017年01月29日 21:22
  • 146

Still 435 days to the Beijing's Olympic Grames.

The time is:2007-5-23 14:52:44 now.Still 435 days to the Beijings Olympic Grames. default.aspx    vo...
  • fanenmin
  • fanenmin
  • 2007年06月05日 23:51
  • 436
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:lesson 3 内存
举报原因:
原因补充:

(最多只允许输入30个字)