1. 知识图
2.1.1 基本概念
- 低级语言:机器语言、汇编语言; 机器指令的集合(0/1)是机器语言;(ADD/SUB等符号表示指令为汇编指令,汇编指令集合为汇编语言)
- 高级语言:C、JAVA、python、Delphi、Pascal等 ;(功能强,抽象级别高,面向各类应用)
- 编译程序:也称编译器;把程序翻译成目标程序,在计算机中执行目标程序,如C语言、Java语言;然后在计算机上运行目标程序;
- 源程序: 高级语言写的程序,不能直接执行,需要翻译;
- 解释程序:也称解释器;直接解释执行源程序,或者将源程序翻译成某种中间代码后再加以执行。把程序翻译成某种中间代码并执行,如python语言;或者直接解释执行源程序;
- 程序设计语言的基本成分:数据(各种数据类型)、运算(加减乘除等)、控制(if、else、switch)、传输(函数参数传递)
- 编译程序和解释程序区别:编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程,因此执行时效率较高;解释方式下,解释程序和源程序(或某种等价表示)要参与到程序的运行过程中,运行程序的控制权在解释程序,边解释边执行,执行效率较低。即:解释方式,翻译程序不生成独立的目标程序,而编译方式则生成独立保持的目标程序 ;
- 高级语言和解释语言比较:
- 效率。编译比解释方式取得更高的效率
- 灵活性。解释语言更灵活,可以运行时修改程序
- 可移植性。解释语言更容易移植
- 汇编程序原理、编译程序原理、解释程序原理
- 语义:语法的含义,分为静态语义和动态语义;静态语义是编译时可以确定的语法成分含义,而运行时才能确定的语法含义是动态语义;
- 分类:命令式:基于动作的语言(结构化 :一,自顶向下逐步精化方法编程;二,按模块组装的方法编程,三程序只包含顺序,判断分枝,循环构造,而且每种构造只允许单出口,单入口);面向对象:c++,java ;函数式:LISP,人工智能,(函数映射关系);逻辑型:prolog,模式匹配
2.1.2 基本成分
基本成分包括:数据,运算,控制和传输;
1)数据成分
2)运算成分 ;运算符号及运算规则
3)控制成分:顺序结构,选择结构,循环结构
循环结构:初始化+循环体+循环条件 (while/do-while)c语言控制结构:
1.复合语句,描述顺序结构 { ... }
2.if和switch
3.循环语句 while和do-while和for(等价while表示)
4)传输成分:数据传输方式,赋值,输入,输出等
5)函数
c语言中,不允许函数嵌套定义;
1.函数定义:包括函数首部+函数体
2.函数声明:先声明,后引用
3.函数调用:值调用,引用调用(形参改变实参)