《C语言程序设计:问题与求解方法》——2.1节高级程序设计语言和编译程序简介

简介:

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

2.1 高级程序设计语言和编译程序简介
计算机发明的早期,人们都是用一条条的指令来编写机器语言程序的。各种指令的操作码和书写格式很难记忆;而且程序一旦出现错误,将很难从0和1组成的海洋中查找出这些错误。此外,为一种类型的计算机编写的程序很难移植到另一台不同类型的计算机上运行。
一条指令所能够做的事微不足道。这就意味着:用机器语言来编写程序的程序员,必须将他的整体编程思路细化、分解,直到成为计算机能够执行的、微观的、一条条的指令为止。这使得用机器语言来编写大型程序变得极其困难。
人们能否使用一种宏观的、与具体计算机类型无关的、人类比较易于掌握和理解的由“字符”序列组成的“程序”,来具体“指导”计算机自动生成机器语言程序,变成一件极为重要和迫切的任务。高级程序设计语言在这种迫切的需求下诞生了。
高级程序设计语言是一种人们比较容易掌握的、无二义性的、“将代数式和英语符号组合在一起的独立于机器的编程语言”,本书后面经常简称为高级语言或高级编程语言。
C语言、C++语言、Java语言、C#语言、Pascal语言和Basic语言都属于高级编程语言。据统计,使用高级语言编程比用低级语言编程的效率大约高出5~20倍。
所谓编译程序,是一种由计算机专家编写出来的机器语言程序,它可以把人们用某种高级语言编写的程序(称为源程序)翻译加工成一个二进制机器语言程序。高级语言源程序是不能直接在计算机上运行的。
【问题】在不同类型计算机上运行的C语言编译程序是否相同?从功能和形式两方面考虑。

相关文章
|
人工智能 C语言
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
617 20
|
监控 关系型数据库 MySQL
【01】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-硬件设备实时监控系统运营版发布-本产品基于企业级开源项目Zabbix深度二开-分步骤实现预计10篇合集-自营版
【01】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-硬件设备实时监控系统运营版发布-本产品基于企业级开源项目Zabbix深度二开-分步骤实现预计10篇合集-自营版
690 0
|
Unix 编译器 C语言
[oeasy]python052_[系统开发语言为什么默认是c语言
本文介绍了C语言为何成为系统开发的首选语言,从其诞生背景、发展历史及特点进行阐述。C语言源于贝尔实验室,与Unix操作系统相互促进,因其简洁、高效、跨平台等特性,逐渐成为主流。文章还提及了C语言的学习资料及其对编程文化的影响。
219 5
|
并行计算 算法 测试技术
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面
C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面,旨在通过综合策略提升程序性能,满足实际需求。
739 1
|
C语言
C语言编程中,错误处理至关重要,能提升程序的健壮性和可靠性
C语言编程中,错误处理至关重要,能提升程序的健壮性和可靠性。本文探讨了C语言中的错误类型(如语法错误、运行时错误)、基本处理方法(如返回值、全局变量、自定义异常处理)、常见策略(如检查返回值、设置标志位、记录错误信息)及错误处理函数(如perror、strerror)。强调了不忽略错误、保持处理一致性及避免过度处理的重要性,并通过文件操作和网络编程实例展示了错误处理的应用。
592 4
|
传感器 人工智能 物联网
C 语言在计算机科学中尤其在硬件交互方面占据重要地位。本文探讨了 C 语言与硬件交互的主要方法,包括直接访问硬件寄存器、中断处理、I/O 端口操作、内存映射 I/O 和设备驱动程序开发
C 语言在计算机科学中尤其在硬件交互方面占据重要地位。本文探讨了 C 语言与硬件交互的主要方法,包括直接访问硬件寄存器、中断处理、I/O 端口操作、内存映射 I/O 和设备驱动程序开发,以及面临的挑战和未来趋势,旨在帮助读者深入了解并掌握这些关键技术。
551 6
|
存储 缓存 算法
在C语言中,数据结构是构建高效程序的基石。本文探讨了数组、链表、栈、队列、树和图等常见数据结构的特点、应用及实现方式
在C语言中,数据结构是构建高效程序的基石。本文探讨了数组、链表、栈、队列、树和图等常见数据结构的特点、应用及实现方式,强调了合理选择数据结构的重要性,并通过案例分析展示了其在实际项目中的应用,旨在帮助读者提升编程能力。
607 5
|
网络协议 物联网 数据处理
C语言在网络通信程序实现中的应用,介绍了网络通信的基本概念、C语言的特点及其在网络通信中的优势
本文探讨了C语言在网络通信程序实现中的应用,介绍了网络通信的基本概念、C语言的特点及其在网络通信中的优势。文章详细讲解了使用C语言实现网络通信程序的基本步骤,包括TCP和UDP通信程序的实现,并讨论了关键技术、优化方法及未来发展趋势,旨在帮助读者掌握C语言在网络通信中的应用技巧。
634 2
|
程序员 C语言
C语言中的指针既强大又具挑战性,它像一把钥匙,开启程序世界的隐秘之门
C语言中的指针既强大又具挑战性,它像一把钥匙,开启程序世界的隐秘之门。本文深入探讨了指针的基本概念、声明方式、动态内存分配、函数参数传递、指针运算及与数组和函数的关系,强调了正确使用指针的重要性,并鼓励读者通过实践掌握这一关键技能。
382 1