《计算机与计算机科学》摘录笔记

《计算机与计算机科学》摘录笔记

书籍地址,感谢分享

  1. 一台数字机不是单一的机器,而是由五个不同的要素组成的系统:1.中央处理器;2.输入设备;3.存储设备;4.输出设备;5.被称为总线的通信网络,它将所有要素连接起来并将系统和外界连接起来;

  2. 存储器指存储信息供中央处理器快速检索的计算机芯片。随机存储器(RAM)用来存储操作计算机程序的信息和指令。通常,程序由磁盘驱动器的存储区调到随机存储器中。随机存储器也称作易失性存储器,因为当计算机的电源关闭时,计算机芯片中的信息随着丢失。只读存储器(ROM)必须永久性可供计算机操作使用的关键信息和软件,如从开机到关机一直指挥计算机运行的操作系统。只读存储器叫做非易失性存储器,因为当计算机的电源关闭时,存储芯片中的信息不会丢。

  3. 编程语言可分为低级语言和高级语言。低级编程语言或机器语言,是编程语言中最基础的类型,可以被计算机直接理解。机器语言视计算机制造商与型号不同而有所区别。高级语言是必须首先翻译成机器语言计算机才能理解和处理的编程语言。C、C++、PASCAL和FORTRAN都是高级语言的例子。汇编语言是中级语言,非常接近于机器语言,没有其他高级语言所表现出的语言复杂程度,但仍然需要翻译成机器语言。

  4. 一条典型的机器语言指令可能写成 10010 1100 1011,意思是把存储寄存器A的内容加到存储寄存器B的内容中。

  5. 在面向对象语言中,用来编写程序的代码和由程序处理的数据,组合成叫做对象的单元。对象进一步组合成类,而类则定义对象必须具有的属性。类的一个简单例子就是书这个类。这个类中的对象可能是小说和短篇小说。对象还有某些与其相关的功能,称为方法。计算机通过使用一个对象的某种方法来访问该对象。方法对对象中的数据执行某种操作,然后将值返回给计算机。对象的类也可进一步组合成层,而在层中一个类的对象可继承另一个类的方法。面向对象语言提供的这种结构,使该语言对于复杂的编程任务非常有用。 ====》举例,之后写代码,把对象用到的属性和方法写到最外边的对象上,赋值为空,说明这个方法和属性,方便查看;

  6. 数据声明语句给称为变量的那些程序元素以名称和属性。变量在程序中可以赋予不同的值。变量可以具有的属性称为类型,它们包括:变量中能保存哪些可能的值;这些值中使用何种程度的数值精度;以及一个变量可以如何以有组织结构的方式------如以表或数组的形式——表示一组比较简单的值。在许多编程语言中,一个关键的数据类型是指针。指针变量本身没有值,而是含有计算机可以用来查找某个其他变量的信息——也就是说,它们指向另一个变量。

  7. 表达式是语句的一段,用于描述要对一些程序变量执行的一系列计算操作,如 X+Y/Z,其中X、Y和Z为变量,加法和除法是计算操作。赋值语句给一个变量赋予得自某个表达式的值,而条件语句则指定要被测试、然后用于选择接下来应该执行的其他语句的表达。

  8. 过程和函数语句将某些代码块定义为以后可在程序中回调的过程或函数。这些语句也定义程序员可选的变量和参数种类,以及当表达式访问过程或函数时代码所返回的值的类型。许多编程语言也容许叫做宏的小翻译程序。宏将那些用程序员定义的语言结构编写的代码段翻译成编程语言可以理解的语句。

  9. 计算机程序是指挥计算机执行某种处理功能或功能组合的一套指令。

  10. 将源代码翻译成目标代码的应用程序有3种:编译程序、解释程序和汇编程序。这3种应用程序有不同的操作方式,对不同类型的编程语言进行操作,但是,它们都要达到将编程语言翻译成机器语言的相同目的。

  11. 编译程序将使用FORTRAN、C和Pascal等高级编程语言编写的文本文件一次性从源代码翻译成目标代码。这不同于BASIC等解释执行的语言所采取的方式。在解释执行的语言中,程序是随着每条指令的执行而逐个语句地翻译成目标代码的。解释执行的语言的优点是,它们可以立即开始执行程序,而不需要等到所有的源代码都得到编译。对程序的更改也可以相当快地进行,无需等到程序重新编译完。解释执行的语言的缺点是,它们执行起来慢,因为每次运行程序,都必须对整个程序一次一条指令地翻译。另一方面,编译执行的语言只编译一次,因此计算机执行起来可比解释执行的语言快得多。由于这个原因,编译执行的语言比解释执行的语言常用,而且,在专业和科学领域几乎总是应用编译执行的语言。

  12. 另一种翻译程序是汇编程序,它用于以汇编语言编写的程序或程序组成部分。汇编语言也是一种编程语言,但它远比其他类型的高级语言类似于机器语言。在汇编语言中,一个语句通常可以翻译成机器语言的一条指令。今天,汇编语言很少用来编写整个程序,而是最常用于程序员需要直接控制计算机某方面功能的情况。

  13. 并行运算

致力于并行计算领域研究的计算机科学家们,推出了许多新的程序模型。在并行计算中,多个中央处理器同时合作处理同一个问题。一个问题的组成部分由不同的处理器同时处理,这样就加快了问题的解决速度。由于并行处理计算机的极端复杂性,以及使其尽可能有效地运行所包含的困难,为这种系统设计程序的科学家和工程师面临着许多挑战。 一种称为分布式计算的并行计算,使用多个互连计算机的中央处理器来解决问题。用来在分布式计算应用环境下处理信息的计算机,常常通过因特网连接。因特网的应用正在成为分布式计算的一种特别有用的形式,尤其是在使用Java等编程语言的情况下。在这种应用中,用户登录到一个站点,并下载一个Java程序到其计算机上。该Java程序运行时,就会与其所来自的站点上的其他程序通信,也可以与不同计算机或站点上运行的其他程序通讯。

  1. 软件开发的瀑布模型

  2. 由于使用实现技巧规避了设计问题,这也可能导致不良的系统结构。

  3. 演化开发

演化开发基于这样的思想:开发一个初始的实现,让其接受用户评论,并让其经过多个版本的改进,一直到开发出能够满足需要的系统(图5A-2)。规格说明、开发及验证活动不是分开进行,而是交叉进行,各项活动之间有快速的信息反馈。

一种是探索式开发。在这种类型中,过程的目标是与客户协作探索其需求,并交付一个最终的系统。

  1. 组件开发

18. 分布式的数据模型

分布式的数据模型可以将不同的数据库访问请求分开在不同的服务器上; 分布式数据库模型并非一种新模型,而是基于关系模型的。但是,数据存储在通过因特网或用广域网通信的数台计算机上。每台计算机(或站点)保持数据库的一部分或整个数据库。换句话说,数据或者是分段存储的——每个站点存储一段,或者被每个站点复制一份。在分段型分布式数据库中,数据是本地化的,本地使用的数据存储在相应的站点上。然而,这并不意味着一个站点不能访问存储在另一个站点上的数据,但访问大多是本地性的,偶尔是全局性的。虽然每个站点对其本地数据具有完全的控制,但也存在通过因特网或广域网的全局控制。例如,一家制药公司可能在许多国家拥有多个站点。每个站点有一个数据库,存储着自己雇员的信息。但是,中心人事部门可以控制所有的数据。 拥有这种数据库是为了安全,如果一个站点上的系统发生故障,该站点的用户可以访问另一个站点上的数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值