《C语言程序设计:问题与求解方法》——1.4节本章习题-阿里云开发者社区

开发者社区> 华章出版社> 正文

《C语言程序设计:问题与求解方法》——1.4节本章习题

简介:

本节书摘来自华章社区《C语言程序设计:问题与求解方法》一书中的第1章,第1.4节本章习题,作者:何 勤,更多章节内容可以访问云栖社区“华章社区”公众号查看

本章习题
一、判断题

  1. C语言中,函数体必须用一对大括号括住,大括号不能省略。
  2. C语言中,函数首部不能以分号结束。
  3. C语言程序中一条语句或定义结束时的分号常常可以省略不写。
  4. 源程序中的注释在翻译成目标程序时会被编译程序忽略掉,所以写注释的意义不大,纯属浪费时间。
    二、连线题。不看术语对照表,请将两边的术语连线

冰箱格子的编号 内存的基本存储单元
冰箱的一个格子 数据
编写普通菜谱的人 状态寄存器
特殊菜谱 输出设备
加工步骤 用机器语言编程的程序员
理想厨房 信息
厨师及炒菜设备 输入设备
厨房管理员 指令地址寄存器
指令存放碟IR 指令寄存器
普通菜谱 CPU
专用加工容器 专用寄存器
编写特殊菜谱的人 基本运算
指令地址存放碟PC 内存地址
原材料 高级语言程序
采购员及配菜员 算术逻辑单元
传菜生 控制单元
炒好的菜 算术逻辑单元可进行的各种运算
厨师可做的各种炒菜的 用高级程序设计语言编程的程序员
基本动作 计算机系统
理想厨房 机器语言程序
状态存放碟 指令
三、问答题(带*号 的题目为选做题)
1.指令地址(PC)寄存器起了什么作用?它位于哪里?取完一条指令后,它的值一定加1吗? 指令(IR)寄存器是用来干什么的?它位于哪里?
2.控制单元的主要功能是什么?它位于哪里?
3.算术逻辑单元的主要功能是什么?它位于哪里?
4.总线在计算机中起何作用?
5.数据总线在传输数据时是双方向的还是单方向的?在传送指令时呢?
6.现代绝大部分计算机是以字作为基本存储单元还是以字节作为基本存储单元?
7.即将要运行的程序的指令序列存放在哪里?程序要加工的数据存放在哪里?
*8.指令序列是否可以直接从硬盘等外存中取到CPU中加以执行?
9.请你用计算机的术语,详细叙述控制单元通过三条总线到内存取指令的步骤。
10.将十进制整数134转化成二进制整数。
11.将二进制整数11010110011010分别转化成八进制和十六进制整数。
12.将十六进制整数(D34A)16转化成二进制整数。
13.将八进制整数623转化成二进制整数。(注意:一个八进制数字转化成多位二进制数字时,不足3位要补成3位,八进制2对应着二进制010而不是对应着二进制10。)
14.能否将内存中的任意一段数据当成指令来执行?(提示:非法指令问题、乱序指令问题。)
15.内存单元的地址是二进制位串,内存单元中存放的数据也是二进制位串,请尽量列出两者之间的不同点。
16.请将十进制数123.45转化成二进制数。(提示:将整数部分和小数部分分别进行转化。)
17.现代计算机的可执行程序在程序运行期间是不可修改的,但在计算机发明的早期却没有这种限制,请考虑一下这种限制的有利和不利之处。
18.一个机器语言程序中的任意一条指令的操作码发生一位错误,会出现什么问题(可能是一条非法指令,或者变成另一种指令)?一个机器语言程序中的任意一条指令的操作数发生一位错误,会出现什么问题(特别考虑跳转指令)?如果是表示一个文字的码发生一位错误,会出现什么问题?
19.请你模仿0.3节归纳出计算机工作的一些重要特点。
20.数据总线在传送指令时是单向的还是双向的?在传送数据时是单向的还是双向的?
21.请你列出理想厨房系统与计算机系统之间的重要不同点。
22.假设有一种采用固定长度操作码的CPU,指令集中共有43条指令,请问操作码的长度最少应当是多少位?其中有多少个是无效码?

版权声明:如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:developerteam@list.alibaba-inc.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:

华章出版社

官方博客
官网链接