计算机科学(学习笔记四) 汇编语言也叫机器语言,是计算机的母语。但01不便于人们操作,人们为了方便操作,会输入文字指令,通过汇编器自动转成二进制指令。但汇编码和底层硬件仍息息相关,程序员仍然需要思考存储器的使用。于是编译器产生,使编程大众化。
数据结构(下)复习 1.数据结构是一门研究非数值计算的程序设计问题中计算机的数据元素以及它们之间的关系和运算等的学科。2.基本数据结构,从逻辑上可分为线性结构和非线性结构,大体上可分成表结构、树结构、图结构 和散结构4大类表结构用于表示结点的先后次序关系,通常一个结点只有1个前驱和后继;树结构用来表示结点之间的层次关系,通常一个结点可以有多个后继,1个前驱。一个数据节点的集合以及集合中各结点之间的关系组成一个数据结构3.数据的物理结构(存储结构)要体现出逻辑结构。
计算机科学(学习笔记三) 即便如此,现如今的CPU一秒最少也有上亿次的指令,超高的时钟速度带来一个问题,如何快速地传递数据给CPU,也就是RAM出现了瓶颈。RAM传输数据需要经过很多到程序,取地址,取数据,配置.....一条普通的指令就需要很多个时钟周期,这会造成CPU空等,就像一台高效的蒸汽机却没有煤能烧。同样也一定存在一定的问题,如数据的“依赖性”,方法是动态排序有依赖关系的指令。同步一般发生在当缓存满了而CPU又要缓存的时候,在清理缓存之前,会先检查“脏位”,如果是“脏”的就会在加载新缓存前将数据写回RAM中。
PTA 7-5 矩阵A乘以B 给定两个矩阵A和B,要求你计算它们的乘积矩阵AB。需要注意的是,只有规模匹配的矩阵才可以相乘。即若A有Ra行、Ca列,B有Rb行、Cb列,则只有Ca与Rb相等时,两个矩阵才能相乘。
计算机科学(学习笔记二) 细想,64个锁存器并排放需要多少根线呢,输入可连成1根,输出和数据线各64根,也有129根了。ALU所计算出的结果需要存储以便使用,存储的其实也是01的二进制数据,利用与门或门可达到这个效果。所以我们说RAM是短暂性记忆,只有有电才能保存,他只是寄存器需要锁住才能保存,也就是所说的运行内存。一位存储做不了什么事,我们可以并排放8个锁存器,就可以存8位信息了。所以一个256位的寄存器,他输入一个8位的地址,4位代表行4位代表列足矣。那么将八个256位寄存器排放(如图,每8位一个字节,则这里有256个字节)
计算机科学(学习笔记一) 但ASCII是为英语设计的,只有255个位置可保存除了字母外的常用符号,但不同国家有不同的符号,如果在土耳其电脑上打开拉脱维亚语写的电子邮件则会出现乱码,随着计算机在亚洲的兴起这种做法彻底失效。但如果超过八位,则会导致溢出,虽然可以通过增加逻辑门数量增大位数但会降低速度,所以现在大多使用“超前进位加法器”ALU就是负责运算的组件,如电子技术基础中类似的74181加法计数器,他是第一个封装在单个芯片内的完整ALU。好的接下来就是我们数字的 “8位行波加法计数器” (有没有很熟悉,书上的是全加器芯片)
PTA 6-19 循环双链表插入操作 /在带头结点的双向链表L中第i个位置之前插入元素e//i的合法值为1≤i≤表长+1int j;j = 1;=L) {++j;return p;//建立循环双链表,实现细节隐藏int flag=1;int a;ElemType e;int n;cin >>n;print(L);return 0;/* 请在这里填写答案 */
PTA 6-18 循环链表的追加 其中rear是一个指针,所指的单元中存储有循环单链表的尾结点的地址(因每个结点均存储的是地址,还要通过指针返回内容,故而是指针的指针)。p拟添加到尾部的结点指针。要求添加新元素后,尾指针要指向新添加的元素。只需要完成上述函数,不需要考虑输入与输出部分,测试程序会调用它进行某些操作。
PTA 6-16构造有序链表 /构造链表//输出链表元素其中p是用户传入的参数。creat函数返回链表的头指针,输入在creat函数中输入,以0表示输入结束。output函数输出链表元素,以一个空格隔开。