IOS基础---C语言学习之C语言概述

一、计算机和软件常识

1. 计算机运行原理

1> 硬件基本组成:

硬盘、内存、CPU

2> 各个部件之间的运作协调:(下图)

IOS基础---C语言学习之C语言概述_第1张图片

 

2. 计算机只能识别0和1

其实计算机只是一种用于高速计算的电子计算器,只能进行数值计算和逻辑计算,具有存储记忆功能,是能够按照程序运行,自动高速处理海量数据的现代化只能电子设备。由硬件系统和软件系统所组成,硬件决定了性能的阈值,软件则可以优化性能。计算机内部用于计算的事一些组合逻辑电路,他们只有两种稳定的形态,也就是打开和关闭两种状态,所以我们用0表示关闭,用1表示打开。

 

3. 计算机和软件的联系

1> 软件的基本概念:软件就是一些指令的集合

2> 软件的安装和运行过程:软件通常安装在硬盘,但是却运行在内存

3> 何为软件开发:软件开发就是写出一些能控制计算机的指令,以实现某种功能

 

二、程序设计语言发展史

我们可以利用程序设计语言来编写程序,再将编好的程序运行到计算机上,计算机就能够按照程序中所说的去做。从计算机诞生至今,程序设计语言大致经历了3个发展阶段:机器语言、汇编语言、高级语言。其中,C语言属于高级语言。其示意图如下:

IOS基础---C语言学习之C语言概述_第2张图片

 

1. 机器语言

1> 什么是机器语言

所有的代码里面只有0和1的程序设计语言就是“机器语言”,每一条指令称为“机器指令”

2> 优点

(1)代码是能被计算机直接识别的,直接对硬件产生作用,程序的执行效率非常高。

(2)能直接访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等。

3> 缺点

(1)要熟记所用计算机的全部指令和指令的涵义,指令又多又难记。

(2)编出的程序全是些0和1的指令代码,可读性差,还容易出错。

(3)对硬件的依赖性很强,不同型号计算机的机器语言不一样。也就是说,如果2台不同型号的机器想实现一样的功能,需要编写2套完全不同的代码。

综上所述,机器语言很难掌握和推广,现在除了计算机生产厂家的专业人员外,绝大多数的程序员已经不再去学习机器语言了

 

2. 汇编语言

1> 什么是汇编语言

汇编语言其实就是符号化的机器语言,它用一个符号(英文单词、数字)来代表一条机器指令。

2> 优点

(1)汇编语言能像机器语言一样,可以直接访问、控制计算机的各种硬件设备

(2)占用内存少,执行速度快

3> 缺点

(1)汇编语言是面向机器的,通常是为特定的计算机或系列计算机专门设计的。因此,不同的机器有不同的汇编语言语法和编译器,代码缺乏可移植性,也就是说,一个程序只能在一种机器上运行,换到其他机器上就不能运行。

(2)汇编语言的符号非常多、难记,即使是完成简单的功能也需要大量的汇编语言代码,很容易产生BUG,难于调试

(3)使用汇编语言必须对硬件非常了解,开发效率很低,周期长且单调

 

3. 高级语言

由于汇编语言依赖于硬件,代码可移植性差,符号又多又难记,于是人类就发明了非常接近自然语言的高级语言。后面要学习的C语言就是高级语言。

1> 优点

(1)简单、易用、易于理解,语法和结构类似于普通英文,且远离对硬件的直接操作,使得一般人经过学习之后都可以编程,而不用太熟悉硬件知识

(2)写出来的程序更加简洁。

(3)用高级语言编写的同一个程序还可以在不同的机器上运行,具有可移植性

2> 缺点

程序不能直接被计算机识别,需要经编译器翻译成二进制指令后,才能运行到计算机上

 

三、C语言简介

1. 先学C语言的原因

(1)OC基于C

(2)OC跟C的思想和语法很多地方不太一样,而且OC能和C混用

(3)C是所有编程语言中的经典,很多高级语言都是从C语言中衍生出来的,比如C++、C#、Objective-C等

 

2. 简史

(1)C语言于1972年发明,首次使用是用于重写UINX操作系统(UNIX以前主要是用汇编语言写的,它奠定了操作系统的基础)

(2)随着UNIX操作系统的成功,C语言也得到了大幅度地推广,被先后使用到大、中、小、微型主机上,至今还是世界上最流行、使用最广泛的高级程序设计语言之一

(3)C语言是一门面向过程的语言,非面向对象的语言。

下面是编程语言热门排行榜:

IOS基础---C语言学习之C语言概述_第3张图片

 

3. 特点

(1)丰富的运算符

(2)丰富的数据类型

(3)可以直接操作硬件

(4)高效的目标代码

(5)可移植性好

 

4. 主要用途

(1)编写系统软件、图形处理、单片机程序、嵌入式系统开发

(2)编写游戏外挂

(3)编写android程序

(4)编写iOS程序

          ......

 

5. 版本问题

(1)1983年美国国家标准局(AmericanNationalStandards Institute,简称ANSI)成立了一个委员会,开始制定C语言标准的工作

(2)1989年C语言标准被批准,这个版本的C语言标准通常被称为ANSI C

(3)1999年,国际标准化组织ISO又对C语言标准进行修订,在基本保留原来C语言特征的基础上,针对应该的需要,增加了一些功能,命名为C99

(4)2011年12月8日,ISO正式公布C语言新的国际标准草案:C11

你可能感兴趣的:(C语言)