计算机导论第3章 程序设计语言(答案)

第3章 程序设计语言

习 题

一、选择题

1. A 2. A 3. D 4. A 5. AB

6. C 7.D 8.C 9.D 10. D

11.ABCD 12.B 13.A 14.ABD

二、简答题

1.简述程序的概念。

答:一个程序就是能够实现特定功能的一组指令序列的集合。或者程序=算法+数据结构。

2. 简述程序设计语言的发展阶段。

经历了机器语言、汇编语言和高级语言三个发展阶段。

机器语言又称面向机器的语言,是特定的计算机硬件系统所固有的语言,是CPU 唯一能够真正不经过翻译而直接识别和执行的语言。相比而言,其他任何语言编写的程序都必须最终转换成机器语言以后才能在CPU 上执行。

由于二进制编码形式的机器指令不便于记忆和使用,人们很快引入了便于记忆、易于阅读和理解、由英文单词或其缩写符号表示的指令,称为汇编指令,又称符号指令或助记符。利用汇编指令编写得到的程序称为汇编语言程序。

通过引入汇编语言,在一定程度上解决了低级语言程序设计的问题,之后又出现了程序的“可移植性”问题,即程序员编写的源程序如何从一台计算机方便地转移到另一台计算机上执行。为了解决这个问题,人们引入了高级语言。

高级语言是一种利用意义比较直观的各种“单词”和“公式”,按照一定的“语法规则”来编写程序的语言,又称为程序设计语言或算法语言。高级语言之所以“高级”,是因为高级语言把很多硬件上复杂费解的概念抽象化了,从而使得程序员可以绕开复杂的计算机硬件的问题、无需了解计算机的指令系统,就能完成程序设计的工作。

3. 简述程序设计过程的一般步骤。

程序设计的过程一般有四个步骤。

(1)分析问题

在着手解决问题之前,应该通过分析,充分理解问题,明确原始数据、解题要求、需要输出的数据及形式等。

(2)设计算法

算法是解题的过程。首先集中精力于算法的总体规划,然后逐层降低问题的抽象性,

逐步充实细节,直到最终把抽象的问题具体化成可用程序语句表达的算法。这是一个自上而下、逐步细化的过程。

(3)编码

利用程序设计语言表示算法的过程称为编码。

(4)调试程序

调试程序包括编译和连接等操作。编译程序将源程序转换为目标程序,它对程序员编写的源程序进行语法检查,程序员根据编译过程中的错误提示信息,查找并改正源程序的错误后再重新编译,直到没有语法错误为止。大多数程序设计语言还要使用连接程序把目标程序与系统提供的库文件进行连接以得到最终的可执行文件。在连接过程中若程序使用了错误的内部函数名,将会引起连接错误。对于经过编译和连接,并最终运行结束的程序,程序员还要对程序执行的结果进行分析,只有得到正确结果的程序才是所需的程序。

4. 简述机器语言和汇编语言的共同特点。

汇编语言具有一个本质上与机器语言一一对应的指令系统。大多数情况下,一条汇编指令直接对应一条机器指令,少数汇编指令对应几条机器指令,所以,汇编语言的实质和机器语言是相同的。与机器指令一样,汇编指令直接针对计算机硬件进行操作,要求程序员具有较为深厚的计算机专业知识;每一条指令只能实现一个非常细微的操作(例如移动、自增),因而源程序一般比较冗长、复杂、容易出错。

5. 简述高级语言程序的运行过程。

使用高级语言编写程序的一般过程可以归纳为以下几个步骤:

(1) 使用文本编辑工具,逐条编写源程序的语句。保存源程序的文件时,文件的后缀名与所用的高级语言有关。

(2) 编译源程序文件,生成目标文件,文件后缀名通常为obj 。

(3) 链接目标文件,生成可执行文件,文件后缀名通常为exe 。

(4) 在计算机上运行可执行程序,并进行调试和维护。

程序的执行环境由操作系统提供,一般分为命令行环境和图形用户界面环境。在DOS 与大多数Unix 类操作系统中,提供的就是命令行用户界面,用户需要在系统命令提示符后面输入各种操作命令以实现需要的功能;在Windows 操作系统中,提供的是图形用户界面,用户可以通过点击鼠标等操作完成希望的功能。“界面就是程序”反映了在程序设计中为用户提供良好的操作界面的重要性。用户使用界面的好坏直接影响着程序的质量,要树立以人为本的思想,尽量为用户提供便利。

6.简述编译程序的概念。

编译程序是把高级语言程序(源程序) 作为一个整体来处理,在应用源程序执行之前,就将程序源代码“翻译”成目标代码(机器语言) ,编译后与系统提供的代码库链接,形成—个完整的可执行的机器语言程序(目标程序代码) 。

7.用图示法表示编译程序的框架。

答:编译程序的框架如图所示:

8.词法分析的任务是什么?

答:作为编译过程的第一个阶段,其任务是从左到右一个字符,一个字符地对源程序进行扫描,读入源程序,对构成源程序的字符流进行扫描和分解,通过词法分析从而识别出一个个单词(也称单词符号或符号) 。

9.语法分析的任务是什么?

答:语法分析是编译过程的第二个阶段,任务是在词法分析的基础上将单词序列分解成各类语法短语,如“程序”、“语句”、“表达式”等等。

10.简述语义处理的功能。

答:编译过程中的语义处理实现两个功能:

(1) 审查每个语法结构的静态语义,即验证语法结构合法的程序是否真正有意义,有时把这个工作称为静态语义分析或静态审查。

(2) 如果静态语义正确,则语义处理要执行真正的翻译,要么生成程序的一种中间表示形式(中间代码) ,要么生成实际的目标代码。

11.简述中间代码的概念。

答:所谓“中间代码”是一种结构简单、含义明确的记号系统,这种记号系统可以设计为多种多样的形式,重要的设计原则为两点:一是容易生成;二是容易将它翻译成目标代码。

12.目标代码生成阶段的任务是什么?

答:目标代码生成阶段的任务是把中间代码变换成特定机器上的绝对指令代码或可重定位的指令代码或汇编指令代码。这是编译的最后阶段,它的工作与硬件系统结构和指令含义有关,这个阶段的工作很复杂,涉及到硬件系统功能部件的运用、机器指令的选择、各种数据类型变量的存储空间分配以及寄存器和后援寄存器的调度等。

三、讨论题

1.作为一个计算机专业的学生,程序设计是大学学习的重要内容之一,程序设计的内容很多,语言的更新也很快,如何才能更好地掌握程序设计?如何利用语言编程?怎样才能克服害怕编程的思想?

答案略。

2.根据你的理解,学习程序设计语言的过程中,最重要的注意事项是什么?

答案略。

第3章 程序设计语言

习 题

一、选择题

1. A 2. A 3. D 4. A 5. AB

6. C 7.D 8.C 9.D 10. D

11.ABCD 12.B 13.A 14.ABD

二、简答题

1.简述程序的概念。

答:一个程序就是能够实现特定功能的一组指令序列的集合。或者程序=算法+数据结构。

2. 简述程序设计语言的发展阶段。

经历了机器语言、汇编语言和高级语言三个发展阶段。

机器语言又称面向机器的语言,是特定的计算机硬件系统所固有的语言,是CPU 唯一能够真正不经过翻译而直接识别和执行的语言。相比而言,其他任何语言编写的程序都必须最终转换成机器语言以后才能在CPU 上执行。

由于二进制编码形式的机器指令不便于记忆和使用,人们很快引入了便于记忆、易于阅读和理解、由英文单词或其缩写符号表示的指令,称为汇编指令,又称符号指令或助记符。利用汇编指令编写得到的程序称为汇编语言程序。

通过引入汇编语言,在一定程度上解决了低级语言程序设计的问题,之后又出现了程序的“可移植性”问题,即程序员编写的源程序如何从一台计算机方便地转移到另一台计算机上执行。为了解决这个问题,人们引入了高级语言。

高级语言是一种利用意义比较直观的各种“单词”和“公式”,按照一定的“语法规则”来编写程序的语言,又称为程序设计语言或算法语言。高级语言之所以“高级”,是因为高级语言把很多硬件上复杂费解的概念抽象化了,从而使得程序员可以绕开复杂的计算机硬件的问题、无需了解计算机的指令系统,就能完成程序设计的工作。

3. 简述程序设计过程的一般步骤。

程序设计的过程一般有四个步骤。

(1)分析问题

在着手解决问题之前,应该通过分析,充分理解问题,明确原始数据、解题要求、需要输出的数据及形式等。

(2)设计算法

算法是解题的过程。首先集中精力于算法的总体规划,然后逐层降低问题的抽象性,

逐步充实细节,直到最终把抽象的问题具体化成可用程序语句表达的算法。这是一个自上而下、逐步细化的过程。

(3)编码

利用程序设计语言表示算法的过程称为编码。

(4)调试程序

调试程序包括编译和连接等操作。编译程序将源程序转换为目标程序,它对程序员编写的源程序进行语法检查,程序员根据编译过程中的错误提示信息,查找并改正源程序的错误后再重新编译,直到没有语法错误为止。大多数程序设计语言还要使用连接程序把目标程序与系统提供的库文件进行连接以得到最终的可执行文件。在连接过程中若程序使用了错误的内部函数名,将会引起连接错误。对于经过编译和连接,并最终运行结束的程序,程序员还要对程序执行的结果进行分析,只有得到正确结果的程序才是所需的程序。

4. 简述机器语言和汇编语言的共同特点。

汇编语言具有一个本质上与机器语言一一对应的指令系统。大多数情况下,一条汇编指令直接对应一条机器指令,少数汇编指令对应几条机器指令,所以,汇编语言的实质和机器语言是相同的。与机器指令一样,汇编指令直接针对计算机硬件进行操作,要求程序员具有较为深厚的计算机专业知识;每一条指令只能实现一个非常细微的操作(例如移动、自增),因而源程序一般比较冗长、复杂、容易出错。

5. 简述高级语言程序的运行过程。

使用高级语言编写程序的一般过程可以归纳为以下几个步骤:

(1) 使用文本编辑工具,逐条编写源程序的语句。保存源程序的文件时,文件的后缀名与所用的高级语言有关。

(2) 编译源程序文件,生成目标文件,文件后缀名通常为obj 。

(3) 链接目标文件,生成可执行文件,文件后缀名通常为exe 。

(4) 在计算机上运行可执行程序,并进行调试和维护。

程序的执行环境由操作系统提供,一般分为命令行环境和图形用户界面环境。在DOS 与大多数Unix 类操作系统中,提供的就是命令行用户界面,用户需要在系统命令提示符后面输入各种操作命令以实现需要的功能;在Windows 操作系统中,提供的是图形用户界面,用户可以通过点击鼠标等操作完成希望的功能。“界面就是程序”反映了在程序设计中为用户提供良好的操作界面的重要性。用户使用界面的好坏直接影响着程序的质量,要树立以人为本的思想,尽量为用户提供便利。

6.简述编译程序的概念。

编译程序是把高级语言程序(源程序) 作为一个整体来处理,在应用源程序执行之前,就将程序源代码“翻译”成目标代码(机器语言) ,编译后与系统提供的代码库链接,形成—个完整的可执行的机器语言程序(目标程序代码) 。

7.用图示法表示编译程序的框架。

答:编译程序的框架如图所示:

8.词法分析的任务是什么?

答:作为编译过程的第一个阶段,其任务是从左到右一个字符,一个字符地对源程序进行扫描,读入源程序,对构成源程序的字符流进行扫描和分解,通过词法分析从而识别出一个个单词(也称单词符号或符号) 。

9.语法分析的任务是什么?

答:语法分析是编译过程的第二个阶段,任务是在词法分析的基础上将单词序列分解成各类语法短语,如“程序”、“语句”、“表达式”等等。

10.简述语义处理的功能。

答:编译过程中的语义处理实现两个功能:

(1) 审查每个语法结构的静态语义,即验证语法结构合法的程序是否真正有意义,有时把这个工作称为静态语义分析或静态审查。

(2) 如果静态语义正确,则语义处理要执行真正的翻译,要么生成程序的一种中间表示形式(中间代码) ,要么生成实际的目标代码。

11.简述中间代码的概念。

答:所谓“中间代码”是一种结构简单、含义明确的记号系统,这种记号系统可以设计为多种多样的形式,重要的设计原则为两点:一是容易生成;二是容易将它翻译成目标代码。

12.目标代码生成阶段的任务是什么?

答:目标代码生成阶段的任务是把中间代码变换成特定机器上的绝对指令代码或可重定位的指令代码或汇编指令代码。这是编译的最后阶段,它的工作与硬件系统结构和指令含义有关,这个阶段的工作很复杂,涉及到硬件系统功能部件的运用、机器指令的选择、各种数据类型变量的存储空间分配以及寄存器和后援寄存器的调度等。

三、讨论题

1.作为一个计算机专业的学生,程序设计是大学学习的重要内容之一,程序设计的内容很多,语言的更新也很快,如何才能更好地掌握程序设计?如何利用语言编程?怎样才能克服害怕编程的思想?

答案略。

2.根据你的理解,学习程序设计语言的过程中,最重要的注意事项是什么?

答案略。


相关内容

  • 计算机导论问答题答案
  • 1. 什么是计算机?p2. 计算机是一种能够根据存储的一系列指令,接收输入.处理数据.存储数据并产生输出的设备. 2. 计算机的分类.p3.4. 早期的分类把计算机划分成三种不同的类别:大型计算机.小型计算机和微型计算机 3. 计算机系统有哪些部件组成(硬件方面).p6.7. 计算机系统单元.显示器 ...

  • 计算机导论试题及答案
  • 计算机导论>试卷1 注意事项:1)本试卷适用于计算机相关专业本科学生使用. 2)本试卷共7页,满分100分.考试时间120分钟. 一)单项选择题(1分×70 =70分) 1.目前,计算机系统中处理的信息是 . A )数字信号 B)模拟信号 C )无线电信号 D)声音信号 2.在下列叙述中,最能 ...

  • 信息技术导论复习题
  • 一.单选题,答案填在括号内. 1. 冯·诺依曼的主要贡献是( ). A.发明了微型计算机 B.设计了第一台电子计算机 C.提出了存储程序的概念 D.设计了高级程序设计语言 2.微型计算机硬件系统中最核心的部件是( ). A. 主板 B. CPU C. 内存储器 D.I/O设备 3.计算机系统必须具备 ...

  • 软件工程导论(第五版)课后习题答案
  • <软件工程导论>课后习题答案 第一章 软件工程概论 1.什么是软件危机? 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题.这些问题表现在以下几个方面: (1)用户对开发出的软件很难满意. (2)软件产品的质量往往靠不住. (3)一般软件很难维护. (4)软件生产效率很低 ...

  • 护理教育导论自考试题及答案一
  • 护理教育导论 一.单项选择题 1.斯金纳通过"训练鸽子打乒乓球的实验"创立的新概念是( ) A.强化 C.反射 B.惩罚 D.塑造 2.社会学习理论主要代表人物是( ) A.托尔曼 C.加涅 B.桑代克 D.班杜拉 3.下列关于文化分析课程模式的论述,不正确的是( ) ... A ...

  • 大学计算机导论第1章 概述(答案)
  • 第1章 概 述 习题(答案) 一.选择题 1. D 2.C 3.D 4.B 5.A 6. B 7. CD 8.C 9.A 10. ABC 11.A 12.C 13.B 14.B 15. A 16.A 17.C 18.A 19. ABC 20.B 21.ABCD 22.C 23. ABCDE 二.简答 ...

  • 网络工程专业就业及考研
  • 本文由aaa99992贡献 pdf文档可能在WAP端浏览体验不佳.建议您优先选择TXT,或下载源文件到本机查看. <网络工程专业导论>课程 <网络工程专业导论>课程 (Introduction to Network Engineering) (Introduction to ...

  • 计算机导论选择题题库
  • 填空题 1.HTTP 是指___________协议. 超文本传输协议 2.HTML 是指___________语言. 超文本标记语言 3.在Internet 中,按_______地址进行寻址. IP 4.拥有计算机并以拨号方式上网的用户需要使用Modem ,Modem 的中文名称 为 ______ ...

  • 级计算机导论题
  • 计算机科学与技术系 <计算机导论>试题及答案 适用范围:计算机科学与技术专业及数字媒体专业 命题人: 审核人: 一. 填空题(每空1分,共20分) 1.中央处理器是由计算机的和 2.计算机网络是指分布在不同地理位置上的具有独立功能的多个计算机系统,通过 和线路相互连接起来,在网络软件的管 ...