- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 第4章软件的编程实现 软件工程基础 机械工业出版社 4.1 编程语言的选择和分类 4.2 编程要求 4.3 面向对象的编程语言介绍 4.4 案例:网上招聘系统软件编程规范 4.1 编程语言的选择和分类 4.1.1 程序设计语言的分类 按语言级别分类 低级语言 高级语言 按解决问题的方式分类 面向机器的语言 面向过程的语言 面向对象的语言 面向问题的语言 按程序执行方式分类 解释执行语言 编译执行语言 编译解释型语言 按应用领域分类 单机语言 网络编程语言 数据库语言 人工智能语言 按应用范围分类 通用语言 专用语言 4.1.2 机器语言 (1)操作码。 (2)操作数的地址。 (3)操作结果的存储地址。 (4)下条指令的地址。 1. 机器语言指令组成 1) 三地址指令:一般地址域中A1、A2分别确定第一、第二操作数地址,A3确定结果地址。下一条指令的地址通常由程序计数器按顺序给出。 2) 二地址指令:地址域中A1确定第一操作数地址,A2同时确定第二操作数地址和结果地址。 2. 机器语言指令格式 3) 单地址指令:地址域中A?确定第一操作数地址。固定使用某个寄存器存放第二操作数和操作结果。在指令中隐含了它们的地址。 2. 机器语言指令格式(续) 4) 零地址指令:在堆栈型计算机中,操作数一般存放在下推堆栈顶的两个单元中,结果又放入栈顶,地址均被隐含,因而大多数指令只有操作码而没有地址域。 5) 可变地址数指令:地址域所涉及的地址的数量随操作定义而改变。 3. 机器语言特点 1) 大量繁杂琐碎的细节牵制着程序员。 2) 程序可靠性差,开发周期长。 3) 程序设计曲高和寡。 4) 可读性差,不便于交流与合作。 5) 可移植性差,重用性差。 4.1.3 汇编语言 汇编语言是面向具体机型的,它离不开具体计算机的指令系统。 不同型号的计算机,有不同结构的汇编语言。 特定的汇编语言和特定的机器语言指令集一一对应。 不同平台之间不可直接移植。 4.1.4 高级语言 系统实现语言 静态高级语言 块结构高级语言 动态高级语言4 根据语言的内在特点划分 基础语言 结构化语言 专用语言 面向对象语言 根据语言的应用特点划分 4.1.5 非过程语言 4.2.1 程序语句结构的构成原则 参考规则 (1) 不要为了节省空间而把多个句子写在一行。 (2) 编写程序时首先要考虑清晰性,不要刻意追求技巧使程序编写得过于紧凑。 (3) 首先要使程序正确,然后再考虑提高速度。 (4) 尽量避免复杂的条件测试。 (5) 尽可能使用库函数。 (6) 尽量使用三种基本控制结构(顺序、选择和重复)来编写程序。 (7) 尽量减少对“非”条件的测试。 (8) 避免大量使用多层循环和条件嵌套。 (9) 即使语言中规定了运算符的优先级,也要尽量用括号来反映表达式中各因子的运算次序,以增强可读性和易理解性。 尽量采用标准结构,尽量避免容易引起误解或混淆的语句和结构。 4.2 编程要求 【例4-1】容易误解的IF-THEN-ELSE 结构。 IF (ab) THEN IF (xy) THEN 语句段A ELSE 语句段B ELSE 语句段C IF (ab) THEN IF (xy) THEN 语句段A ELSE 语句段B ELSE 语句段C IF (a≤b) THEN 语句段C ELSE IF (xy) THEN 语句段A ELSE 语句段B 【例4-2】IF-THEN-ELSE 结构中的冗余空语句。 IF c THEN null ELSE S; IF (NOT c) THEN S; IF (AB) THEN GOTO 10; GOTO 20; 10 S; 20 …… IF ( AB ) THEN S; 20 …… 【例4-3】费解的嵌套结构。 WHILE C1 DO IF C2 THEN WHILE C3 DO IF C4 THEN REPEAT S UNTIL C5; WHILE (C1 AND C2 AND C3 AND C4
原创力文档


文档评论(0)