文档介绍:C程序设计语言
第0章基础之基础
孙志岗******@hit.
计算机系学什么?
什么是“会计算机”?
会打字?
会编程?
会DIY?
会上网?
会“黑客”?
……
懂原理、能应用、有创新
puter)
计算机是用来延伸人的能力的工具,需要人来驾驭
AI能实现吗?(AI,Artificial Intelligence,人工智能)
会有那么一天,人与计算机的位置互换吗?
我们的职责是让它更容易被驾驭
自我毁灭的过程
人与计算机的对话
两个说不同母语的人的对话方式:
一方学另一方的语言
双方都学习一种第三方语言
人与计算机的对话方式:
计算机学习人的语言(自然语言理解)
人学习计算机的语言
学习第三方语言
机器语言
计算1+1
10111000
00000001
00000000
00000101
00000001
00000000
汇编语言
MOV AX, 1
10111000
00000001
00000000
ADD AX, 1
00000101
00000001
00000000
BASIC语言
PRINT 1+1
C语言
#include <>
main()
{
printf("%d\n", 1+1);
}
C语言的创世纪
一切从一个叫“Space Travel”的电子游戏开始……
为了让他的游戏能在PDP-7上运行,Ken Thompson用汇编语言给PDP-7写了一个操作系统——UNIX
汇编太不好用了,Thompson需要高级语言
试验了一些高级语言,包括Fortran,都不理想
他在BCPL基础上,自己设计了一个B语言
UNIX开始发展,B也不够用了
Dennis Ritchie加入,把B改造成C
开始用C重写UNIX
Ritchie和Thompson在开发UNIX