1、 上学吧:http:/上学吧为您提供注册结构工程师考试资料下载:http:/ )备考讲义(1)第七章 计算机应用基础 第一节 计算机基础知识 一个计算机系统可分为两部分:硬件和软件。 一、硬件的组成和功能 计算机的硬件由以下部分组成:中央处理器(即 CPU)、内存储器、输入输出设备、 外存储器。 中央处理器包括运算器和控制器。控制器的主要作用,是使计算机能自动地执行存放 在内存储器的程序。运算器的作用则是进行加、减、乘、除等运算。现代中央处理器的形 式通常是一个集成电路芯片。内存储器的功能是保存大量的程序和数据等信息。通常,内存储器只能在计算机开机(通电)时才能保存信息;一旦关机 ,它保存的信
2、息通常也随之丢去。因此,内存储器不 能用来永久保存信息。现代的内存储器通常由若干个集成电路芯片组成。内存储器通常又 简称为内存。 当需要永久保存信息时,一般使用外存储器。外存储器有很多形式,常见的有磁盘、 光盘、磁带、闪存等。 输入输出设备包括输入设备、输出设备和既能输入又能输出的设备。它们起着把各种信息(程序、数据、命令等)输入计算机以及把各种处理结果从计算机中输出的重要功 能。常见的输入输出设备有键盘、磁盘机、显示器、打印机等等。二、软件的组成及功能 软件是指各种程序及其总和。软件对于计算机的使用是必需的。 软件可分为系统软件和非系统软件两类。系统软件包括操作系统、编译程序和解释程 序、各
3、种程序设计语言等等。非系统软件主要是指各种实用程序,包括用户自己编写的 程序。 操作系统的功能是提高计算机的使用效率和方便用户使用计算机。操作系统是用户与计算机之间的接口。 各种程序设计语言可用来编写程序。程序设计语言分为机器语言、汇编语言和高级语言三个层次。计算机能直接接受的只是以二进制数表示的机器语言。汇编语言是机器语言的符号表示并且需要翻译成机器语言才能执行。用高级语言编写的程序更是必须通过编译程序或解释程序翻译成机器语言才能供机器执行。常用的高级语言有BASIC、 FORTRAN、C 等等。 用机器语言或汇编语言编写的程序一般效率较高、执行速度较快;而用高级语言编写 的程序则一般效率较
4、低、执行速度较慢。但用高级语言编写程序要比用机器语言或汇编语 言编写程序容易些。 实用程序是非常丰富的,可用于各种各样的具体目的。用户也可自己编写各种实用程序。上学吧:http:/上学吧为您提供注册结构工程师考试资料下载:http:/ )备考讲义(2)三、数制转换转 计算机内的数可有二进制、八进制、十六进制、十进制等不同的表现形式。人们多习惯于用十进制,计算机则主要使用二进制。因为同一个数可表示成不同进制的形式,故常有必要进行数制间的转换。 我们可以一般地描述 r 进制 ,其中 r 是一个大于 1 的正整数。 r 进制有如下特点:(1)数的每一位只能取 r 个不同的数字 ,其符号集是0,1,r
5、-1;(2)逢 r 进位,r 进制数的从小数点开始向左的第 i 位数(i=0,l, m)的权是 ri,从小数点开始向右的第 i 位数(i =I,2,m)的权是ri。我们用( ) r 表示括号内的数是 r 进制数。 因此,对 r 进制数(amam-1ala0a-1 a-2a-n)r 按权展开的表达式为:(amam-1ala0a-1 a-2a-n)r =amrm+am-1rm-1+。 。 。+a1r1+a0r0+a-1r-1+a-2r-2+ 。 。 。+a-nr-n (7-1-1) 例如,对十进制数, r=10,符号集为0, 1, 2, 3, 4, 5, 6, 7, 8, 9。对十六进制数,r=1
6、6,符号集为0,1,2,3,4,5,6,7,8,9, A, B, C, D, E, F。不同数制之间的转换,对于整数部分,往往可直接按定义进行,即直接法,也可用余 数法转换。采用余数法时,若要将 r 进制的整数 M 转换成 t 进制数的整数,则把 M 除以 t 并取余 ,再把上述得数除以 t 并取余 ,直至不能再除时,最后的商也作为余数。 所有的余数按从后到前的次序依次从左到右排列就构成了所要求的 t 进制数。【例 7-1-1】 把(1101011)2 转换成十进制数。 【解】用直接法。 (1101011)2=126 + 125 + 024 + 123 + 022 + 121 十 120= (
7、107) 10 【例 7-1-2】把(107) 10 转换成二进制数。 【解】用余数法。107/2 得 53 余 1; 53/2 得 26 余 1; 26/2 得 13 余 0; 13/2 得 6 余 1; 6/2得 3 余 0; 3/2 得 1 余 1。把最后的得数 1 亦作为余数,把所有的余数按从后到前 的次序从左到右排列得:(107)10 = (1101011)2 不同数制之间的转换 ,对于小数部分 ,可用取整法,即: 要将 r 进制数的小数 M 转 换成 t 进制数的小数时 ,把 M 乘 t ,取整数部分 ;又取上一步得数的小数部分再乘 t,再 取整数部分;直至完毕或达到要求的位数。然
8、后把各整数按从前到后的次序从左到 右排列,即构成所求的小数部分。结构工程师考试(计算机应用基础 )备考讲义(3)【例 7-1-3】把(0.375)10 转换成二进制数。 【解】用取整法。0.3752=0.75,整数为 0,小数为 0.75; 0.752=1.50,整数为 1,小数为0.5; 0.52=1.0,整数为 1,小数为 0,停止。把所得的整数按从前到后 的次序从左到右排列,即得所求的二进制数(0.0ll)2 即 (0.375)10=(0.0ll)2 【例 7-1-4】把(0.011)2 转换成十进制数。 上学吧:http:/上学吧为您提供注册结构工程师考试资料下载:http:/ (0.
9、011)2(1010)2= (11.11)2,整 (11)2 = 3,小数为(0.11)2; (0.11)2(1010)2=(111.1)2,整数为 (111)2=7, 小数为(0.1)2; (0.1)2(1010)2= (101)2,整数为(101)2=5,小数为 0,停止。所以 (0.0ll)2= (0.375)10例 1.目前一般计算机系统的工作原理是( B );, A 程序设计 B 二进制C 存储程序和程序控制 D 结构化 2.在微型机计算机中,应用最普遍的字符编码是( B ) 。 A BCD 码 B ASCII 码 C 汉字编码D 补码 3.计算机中的字节是个常用的单位,一个字节由(
10、 C ) 个二进制位组成 A 2 B 4 C 8 D 16 4.一个完整的计算机系统的包括( B )。. A 主机及外围设备 B 硬件系统及软件系统 C 系统软件和应用软件 D 操作系统和应用系统 5.微型算机的算术逻辑部件包含在( A )之中 A CPU B I/O 接口 C I/O 设备 D.存储器结构工程师考试(计算机应用基础 )备考讲义(4)第二节 自学第三节 计算机程序设计语言 一、程序设计语言 计算机程序设计语言又称算法语言。目前国内外比较通用的算法语言有多种,如BASIC、FORTRAN、PASCAL 、ALGOL 、C 等。随着算法语言本身的发展和完善,同一语言中还有不同的标准
11、文本问世。每种语言都有其自身的规则和特点,但也有共性的 地方。在目前通用的算法语言中, FORTRAN 语言特别适用于科学计算,又是为我国广大 结构工程技术人员较为普遍掌握的一种语言,因此,本次注册结构工程师考试的内容选为上学吧:http:/上学吧为您提供注册结构工程师考试资料下载:http:/ 语言。FORTRAN 语言于 50 年代出现于美国。1966 年,美国国家标准化协会(ANSI)公 布了标准 FORTRAN (ANSI X3. 9-1966 ) , 1977 年对其进行了修订, 1978年,将其定为 国家标准,称为 FORTRAN 77(ANSI X3. 9-1978) .以下有关
12、内容,主要参照 FORTRAN 77 的标准进行说明。 二、FORTRAN 的程序构成和基本规定 (一)程序构成 一个完整的 FORTRAN 程序由一个主程序或一个主程序和若干个子程序组成。主程序与每个子程序都是一个独立的程序单位,称为一个程序模块。关于程序的构成,有如下一些基本规定。 1.程序由若干行组成。 2.在 FORTRAN 中,程序行分为语句行和注释行。 (1)语句行由 FORTRAN 语句组成,包括执行语句和非执行语句。执行语句使计算 机在运行时产生某些操作,如赋值语句、输入输出语句等。非执行语句为计算机在编译或 运行时提供某种信息,本身不产生操作,如说明语句、格式语句等。 (2)
13、注释行又称为非语句行,在程序中起注释作用,便于程序的编写、修改和维护。 3. FORTRAN 规定,每个语句行只能写一个语句;但当语句长度超过规定的一行范围、或者为表达清晰起见需要将一个语句分行书写时,可以采用连续行。连续行的第一行称为始行,以后各行称为续行。 4.FORTRAN 语句可以有标号。标号作为一个语句被其他语句引用的标志。在同一个程序单位中,不能出现相同的语句标号。 5.程序单位的最后一行语句,必须是 END 语句。如果一个 FORTRAN 语句行与注释行的集合,最末没有 END,可称其为一个语句块或程序段,但不能作为一个程序单位。 (二)书写规则 1.FORTRAN77 的字符集
14、由 26 个英文字母、10 个数字和其他 13 个专用字符组成。 2.一个程序行有 80 列,每列写一个字符。 3.程序行的第 1 列如写上 C 或*,表示该行为注释行。注释内容可写在该行中除第 1 列外的任何位置。 4.在语句行中,程序行的第 1 列至第 5 列为语句标号区,标号区内是最多为 5 位的无符号整数;程序行的第 6 列为续行区,若某行为续行,则标号区必须空白,且第 6 列为 非 0的任一 FORTRAN77 字符(不能为空格) ;第 7 列至第 72 列为语句区。结构工程师考试(计算机应用基础 )备考讲义(5)例如,在边长为 B 的正方形中挖一个半径为 R 的圆,计算剩余的面积
15、;若 B0 时,转向标号为 n3 的语句。 例如,计算边长为 B 的正方形中挖去半径为 R 的圆后的面积 ,若 B2R,则给出相 关信息。该问题的 FORTRAN 程序可用别辽条件转移语句编写如下。 C Computation of area. READ*B.R IF (B-2*R) 5, 15, 15 5 WRITE (*, 10) 10 FORMAT (Error message: B less than 2*R) GOTO 20 15 AREA=B*B-3.14159*R*R WRITE *AREA 20 CONTINUE END 本例中,在算术条件转移语句的第 1 个分支后,使用了 G
16、OTO 语句; 倘没有此语句,则 程序按顺序仍会执行标号为 15 的语句,从而得出不正确的结果上学吧:http:/上学吧为您提供注册结构工程师考试资料下载:http:/ 备考讲义(13)3.计算转移语句计算转移语句的一般形式为: GOTO (n1, n2, nm ) , e 其中, ni (i = 1, 2, m)是被转向的语句标号,共 m 个; e 是一个整型算术表达 式,其值不得小于 1 且不得大于 m.当 e 的值等于 1 时,程序转向标号 nl 的语句,当 e的值等于 2 时转向标号 n2 的话句,当 e 的值为 m 时转向标号为 nm 的语句。整型算术表达式 e 前的逗号可以省略。计
17、算转移语句通常也和 GOTO 语句结合起来使用。 例如,有如下一个程序: READ*,M GOTO (20, 30, 40, 50) M 20 N=M GOTO 60 30 N=M*2 GOTO 60 40 N=M*3 GOTO 60 50 N=M*4 60 WRITE*,N END 程序运行时,若输入 1,则转向标号为 20 的语句,x 的值为 1 ;若输入 2,则转向标号为 30 的语句,x 的值为 4;输入 3,转向标号为 40 的语句,x 的值为 9,输入 4,转向标号为 50 的语句,x 的值为 16(二)逻辑条件语句 1.逻辑 IF 语句 逻辑 IF 语句用来实现选择结构。它的一般
18、形式为:IF (逻辑表达式)内嵌语句 其中内嵌语句是单独的一个可执行语句。逻辑 IF 语句执行时,首先计算逻辑表达式的值,如果逻辑表达式的值为“真“ ,则执行内嵌语句,若内嵌语句非转移语句,则执行该语句 后继续按顺序往下执行,若内嵌语句是转移语句,则转向指定的语句;如果逻辑表达式的 值为“ 假 “,则不执行内嵌语句,而直接执行该语句后面的语句。 例如,从键盘读入一个代表百分制成绩的数据,如果数据在 90-100 之间就输出Excellent ,在 80-89 之间输出Good ,在 60-79 之间输出 Pass ,在 60 以下则输出 Not pass .其程序可以如下编写: READ (*
19、.*) IPOINT IF ( IPOINT. GT .100. OR. IPOINT. LT. 0) WRITE (* ,*) DATA ERROR IF ( IPOINT.GE.90.AND. IPOINT. LE.100) WRITE ( *.*) Excellent IF ( IPOINT.GE.80.AND.IPOINT.LE89) WRITE ( * . *Good IF ( IPOINT.GE.60.AND. IPOINT. LE. 79) WRITE (*.*) Pass IF ( IPOINT.GE.0.AND. IPOINT. LE.59) WRITE (*.* ) Not
20、 Pass上学吧:http:/上学吧为您提供注册结构工程师考试资料下载:http:/ 备考讲义(14)2.块 IF 结构的各种形式 (1)块 IF 和 ENDIF 形式 IF (逻辑表达式) THEN 语句块 ENDIF 当逻辑表达式的值为“真 “时,执行语句块,否则按顺序执行 ENDIF 后的语句。例如, 如下程序段: READ*, RN, AN IF (RN.GE.0.0.AND.AN.GT.0.0) THEN STRESS=RN/AN WRITE*RN ,AN,STRESS ENDIF END 当 RN 大于等于零且 AN 大于零时,执行赋值语句和输出语句。 (2)使用 ELSE 的形式
21、 IF (逻辑表达式) THEN 语句块 1 ELSE 语句块 2 ENDIF 当逻辑表达式的值为“真 “时,执行语句块 1 ,当逻辑表达式的值为 “假“时,执行语句块 2。由此可见,使用 ELSE 的形式, 可以进行两个分支的选择。 (3)使用 ELSE IF 的形式 IF (逻辑表达式 1) THEN 语句块 1 ELSE IF (逻辑表达式 2) THEN 语句块 2 ELSE 语句块 3 ENDIF 这种形式,允许在三个分支中作出选择。当逻辑表达式 1 的值为“真“ 时,执行语句 块 1表示的分支;当逻辑表达式 1 的值为“假“而逻辑表达式 2 的值为“ 真“时,执行语 句块 2 表示
22、的分支;当逻辑表达式 1 的值和逻辑表达式 2 的值均为“假“时 ,执行语句块 3 表示的分支。 3.块 IF 结构的嵌套 在一个块 IF 结构的语句块中,可以完整地包含另一个或多个块 IF 结构,称为块 IF 的嵌套。块的嵌套可以多层。上学吧:http:/上学吧为您提供注册结构工程师考试资料下载:http:/ 备考讲义(15)七、函数与子程序(过程) (一 )内部函数 内部函数是预先编制的一些常用函数或算法的过程,由 FORTRAN 语言提供,可以, 直接调用。内部函数调用时的一般形式是: 内部函数名(实元表) 实元表中元素的数据类型、个数是预先规定的。 常用内部函数及其功能可查阅 FORT
23、RAN 教材或用户手册。 (二)语句函数1.语句函数的定义 定义语句函数的语句称为语句函数语句。其一般形式为: 函数名(形参表) =表达式。 其中,函数名的命名规则与一般变量名相同,所以它也可以用类型说明语句等来说明。形参又称哑元,是一些变量名,一般应出现在表达式中。 语句函数在程序单位中的位置,应在所有可执行语句之前。 2.语句函数的调用调用语句函数的结果是得到一个函数值,因此,调用语句函数时代之以实际变量(又称实元)。(三)函数子程序 一个函数子程序是一个独立的 FORTRAN 程序单位。它的第一个语句必须是FUNCTION 语句,最后一个语句必须是 END 语句。即函数子程序的一般结构为
24、: 类型说明 FUNCTION 函数名(形参表) 语句块 RETURN END 也可以写为: FUNCTION 函数名(形参表) 类型说明函数名 语句块 RETURN END 其中函数名的命名规则与变量相间,而函数名的类型决定了函数值的类型。 在函数子程序中,形参可以是变量名、数组名、外部过程名,而形参的命名与类型说 明也与变量相同,形参数组也必须在函数子程序中予以定义。 函数子程序的函数值由函数名带回到调用该函数子程序的程序,因此,在函数子程序 中必须对函数名赋值。在函数子程序中,函数名应该像普通变量那样来使用。 在函数子程序中,所有的名字、语句标号都可以和其他程序单位中的相同而彼此没有 任何关系。 在函数子程序中, END 语句的功能有两个 :一是表示该程序单位的结束,二是具 有返回语句 RETURN 的功能。函数子程序中必须有并且只有一个 END 语句,而且只 能是子程序的最后一个语句。当在子程序的其他位置须要返回时,可以使用 RETURN 语句。上学吧:http:/上学吧为您提供注册结构工程师考试资料下载:http:/