C语言之程序设计基础(笔记一)

来源:互联网 发布:unity3d ar ios 编辑:程序博客网 时间:2024/05/16 08:35

程序

一、什么是程序?

        对于计算机系统,程序就是系统可以识别的一组有序的指令。 

二、计算机基本结构:存储器   处理器

      (程序存在的地方)
1、  存储器(Memory):是现代信息技术中用于保存信息的记忆设备。

       存储器分类:

                          主存储器:也称为内存储器、内存,是计算机的工作存储器。

                                            程序,待处理的数据和处理的结果都存储在内存中。

                                            内存通常以字节为单位对存储单元按顺序进行编址。

                                            内存读写速度比较快,但只能在加电时存储数据。

                            外存储器:是用来长期保存数据的大容量存储器,目前多为磁存储器或光存储器。

                                              读写速度慢于内存,可以在不加电的情况下长期保存数据。

                             寄存器 :CPU内部的高速存储器,速度快,数目少
                                             它们用来保存指令执行过程中临时存放的寄存器操作数和中间(或最终)的操作结果

2、中央处理器: (CPU,Central Processing Unit)

                      是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。

                      它的功能主要是解释计算机指令以及处理计算机软件中的数据。

三、程序怎么被执行的和其特性

1、程序存储在磁盘上,被加载到内存中,计算机系统从内存中逐条读取指令并执行

2、程序是与计算机沟通的语言
      程序是由特定语法与关键字构成
      程序是一行一行执行的
      程序的执行,从入口点开始,原则上是由而下,从左而右执行的

四、程序设计语言

1、机器语言:直接使用机器指令(0,1序列)来设计程序,可以被计算机系统直接识别。
 
                        是计算机唯一能够执行的语言
                        其他语言必须先转化为机器语言
                        指令有0与1组成,称为机器码
                        指令难记忆但执行速度最快
                        不同类型机器有不同机器码,不具备移植性 

2、汇编语言:把机器指令符号化,通过一组简单的的符号来表示机器指令,更接近于自然语言,更容易理解和使用。

                       不能被计算机系统直接识别,要转化成机器语言后才能执行。和机器语言一样,开发工作量大,无法移植。

3、高级语言:离机器越来越远
                      语法接近人类的自然语言
                      执行的单位不是指令,而是语句,一行语句对应多个指令
                      开发效率越来越高
                      必须编译成机器码
                      移植性好

4、第四代语言:4GL,也称为面向问题的程序语言仅需告诉计算机“做什么”,不需要指挥计算机“如何做”。
                         大大提高开发效率,如SQL语言及各种查询语言。

5、自然语言:运用人工智能,已接近口语的指令指挥计算机,如语音(还没有成熟)。

五、程序设计的步骤

                            编辑----->编译、链接----->执行、调试

    其中编译、链接阶段:

    1、把源代码转换成机器码的过程
    2、之前还会进行前期处理
    3、过程中会进行语法检查
    4、编译器:完成编译动作的程序
 
    链接:将目标文件与包含文件/用到的函数库建立关联的过程

六、几个基本概念

1、编译型语言:  需要先经过编译和链接程序产生可执行文件的语言,比如:java/c/c++等
                             开发人员编译

2、解释性语言: 不需要经过编译和链接的过程,直接在特定的程序或环境下即可执行的语言,如:

                             JavaScript/Python等     自动编译链接

3、数据:            是计算机程序处理的对象,可以是整数、实数、字符,也可以是图像、声音等的编码表示。

4、数据结构:     指的是数据与数据间存在一种或多种特定关系。

                            与数据结构密切相关的便是数据的类型和数据的存放。

5、程序设计:     编写程序的过程

6、软件:            程序+文档