发表于: 2017-03-20 22:08:48
1 726
今天完成的事情:
复习昨天晚上的腾讯课堂资料,并整理笔记。开始做任务13的header和footer部分。
明天计划的事情:
继续做任务13,用sass写主体部分。
遇到的问题:
写sass样式时,让文字上下居中,右边还有一个小图片,发现设置padding值和margin值不起作用,最后给它的父级容器设置了line-height实现效果。另外发现如果元素的父元素设置了浮动,那子元素会受父元素的影响,text-aglin:center对它不起作用,需要把子元素的float设置成none才起作用。
收获:
1、存储器:是用来存储程序和数据的部件。有了存储器计算机才能正常工作。
a、按用途分为主存和辅助存储。
主存包括只读存储器(ROM)和随机存储器(RAM)。RAM存放当前CPU正在执行和将要执行的程序和需要处理的数据,数据断电后丢失。
辅助存储包括:硬盘、磁带、光盘、U盘等,用来弥补主存容量不足,且可以长期保存数据。
特点:存储单元是CPU访问主存储器的基本单位,8位二进制为一个存储单元。每个存储单元有一个地址,用十六进制数表示。存储单元的特点:新来旧去、取之不尽。程序中的变量、函数、数组、对象都要放在主存的存储单元中。
2、指针:指针即地址。一个变量在主存中占若干个连续的存储单元。对于一个函数或者对象来说,在主存中需要一片连续的空间来进行存储,这篇连续空间的手字节的地址即为函数或对象的指针,通过指针可以访问函数或对象。
指针有基本类型、引用类型、复制对象。
例如:int a=3;(基本类型)
company c1=new company(500,"month");company c2=c1;(引用类型,修改了c1的值c2也会被修改,二者指向同一片存储区域)
company c2=(company)c1.clone();(复制对象,把c1的值复制了再赋给c2,c1和c2指向不同的存储空间,互不干扰 )
3、存储器分层结构:按功能分为主存储器、辅助存储器(外存)、高速缓存(cache)。
1、层次存储系统组成:a.用多种类型MEM构成前方-后方的层次结构;
b.前方MEM中信息为后方MEM中信息的副本;
c.各层MEM之间信息传递是“透明”不可见的
2、常见的存储系统层次结构:围绕主存的层次结构一般为“cache-主存-辅存”三种MEM构成的两个存储层次。
a.cache-主存存储层次:设置高速缓冲存储器,目标是为了解决主存速度问题(cache的速度,主存的容量)
b.主存-辅存存储层次:目标是为了解决主存容量问题(主存的速度,辅存的容量)
3、层次存储系统的工作方式:程序执行需求:即将执行的指令和数据存放在主存中。
4、cache的工作原理:为了解决CPU和主存之间速度不匹配问题,将cache和主存分成若干个块(行),每块包含若干个字。
1、地址映射:把CPU送出的主存地址转换为cache存储器的地址。
a.直接映射:主存空间按照cache容量分区,规定主存中每个块都限定了必须在cache中的某个快中。地址变换简单、但是不灵活,冲突高。
b.全相连映射:主存中的任意一块都可以调入cache存储器中的任何一块中。快冲突率低,但地址变换复杂,速度慢,成本高。
c.组相连映射:将cache中的块分成组,主存按照cache容量分区,区内分组。规定组间采用直接映射方式而组内采用全相连方式。每组内有2、4、8、16块,称为2路、4路、8路、16路组相连cache。块冲突率低,块利用率提高,块失效率减低,2路、4路组相连在命中率和成本方面相对较好。
5、cache替换策略:先进先出算法(FIFO)、最近最久未使用算法(LRU)。
先进先出:符合队列特性,尾部插入数据,头部数据淘汰使用Queue来实现。
LRU:新数据插入链表头部,每当cache命中,则将数据一道链表头部;当链表满了的时候,将尾部数据丢弃。
评论