[oeasy]python052_[系统开发语言为什么默认是c语言

系统开发语言为什么默认是c语言 \[趣味拓展c语言发祥史_c是如何成为第一系统语言的

  • 上次我们了解了 标识符 要求

  • 首字符 为 字母和下划线

  • 后面字符 为 字母和下划线 外加 数字

添加图片注释,不超过 140 字(可选)

  • 使用isidentifier函数 可以验证

  • 标识符 是否合法

  • 规则 可以追溯到 c语言

  • c语言 为什么

  • 会影响到 python 呢?🤔

回顾

  • c语言

  • 源自 美国电报公司 贝尔实验室

  • 1969年 贝尔实验室 诞生 两个杰作

  1. unix

  2. c语言

  3. 兄弟俩 互相影响

添加图片注释,不超过 140 字(可选)

  • 伯克利大学

  • 从unix改出来的 自己的发行版

  • 叫做 伯克利发行版

  • 也就是 bsd

份额

  • bsd市场份额

  • 慢慢 追上unix

  • 逐渐 成为主流

添加图片注释,不超过 140 字(可选)

  • 操作系统

  • 有 巨大的商业潜力

  • 美国电报公司

  • 因为 有垄断案

  • 不能 销售软件

bsd 和 unix

  • 垄断案 最终 判决

  • 美国电报公司

  • 拆成 七个小公司

添加图片注释,不超过 140 字(可选)

  • 美国电报公司

  • 终于 可以销售软件了

  • 开始 使用 法律武器

  • 消灭 bsd发行版

分支

  • 诉讼 bsd的案子

  • 之前 没有判例

  • 情况 长期 不明朗

  • 爱好者们

  • 不敢学 bsd

  • 也不敢学 unix

  • 怕学了也白学

添加图片注释,不超过 140 字(可选)

  • 法律问题 和 开发问题

  • 绞在一起

  • 成死结了

  • 怎么办呢?🤔

风借火势 火借风威

  • 硬件 在加速进化

  • 新cpu架构层出不穷

  • 各种 汇编指令集 彼此不通

添加图片注释,不超过 140 字(可选)

  • 二进制文件 不能 跨架构运行

跨架构

  • 不同指令集的 架构

  • 只要 有c语言 编译器

  • 就可以 跑类unix (unix-like) 系统

添加图片注释,不超过 140 字(可选)

  • 这使得 c语言

  • 跨架构 across architectures

  • 可移植 portable

  • 成了 默认唯一选项

添加图片注释,不超过 140 字(可选)

  • 计算机科学 属于

  • 电子工程的 一种应用

  • 没有 这个学科

  • 更没 学习资料

  • 那怎么 学c语言 呀?🤔

教科书

  • 做unix的 汤普森 和 里奇

  • 在 bell实验室 有个同事

  • Brian Wilson Kernighan

  • a.k.a bwk

添加图片注释,不超过 140 字(可选)

  • 开始 和里奇 一起

  • 给 c语言 出书

教材

  • 这本书

  • 很薄

  • 轻松的语言风格

添加图片注释,不超过 140 字(可选)

  • c的特点 就是

  • 让人 像说话 一样编程

  • 不用记 cpu汇编指令

  • 这可 方便多啦!!😄

成书

  • 有了 学习资料

  • 就有 更多人学

  • 有 更多人 学

  • 就有 更多人参与其中

  • 有 更多人可以答疑

  • 有 更好的案例

  • 正反馈 逐渐成型

  • 需要实践 就到unix或bsd上动手

  • 写代码、编译、运行

  • 形成了 编程文化的 源头

添加图片注释,不超过 140 字(可选)

  • 这书 长 什么样 呢?

封面

  • 封面

  • 强调一个C字

添加图片注释,不超过 140 字(可选)

  • 里面呢?

原文阅读

  • 语言 简洁 明确

添加图片注释,不超过 140 字(可选)

总结

  • 贝尔实验室 诞生了 两个伟大的作品
  1. unix 系统
  • 美国电报公司

  • 压制bsd

  • 想 垄断操作系统 市场

  1. c语言
  • 写起来简单

  • 还能 跨架构

  • 说明书里 还有

  • 我们的老梗 呢!

添加图片注释,不超过 140 字(可选)

相关推荐
炸膛坦客20 小时前
单片机/C/C++八股:(二十六)IIC 专题(I²C)---- 上集
c语言·c++·单片机
灯澜忆梦20 小时前
GO_并发编程---定时器
开发语言·后端·golang
-银雾鸢尾-20 小时前
C#中的StringBuilder相关方法
开发语言·c#
-银雾鸢尾-21 小时前
C#中结构体与类的区别;抽象类与接口的区别
开发语言·c#
大模型码小白1 天前
【Python零基础教程】继承、多态与魔法函数:面向对象编程三大核心特性详解
java·大数据·开发语言·人工智能·python·ai编程
段一凡-华北理工大学1 天前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化
Ljwuhe1 天前
C++——多态
开发语言·c++
心平气和量大福大1 天前
C#-WPF-Window主窗体
开发语言·c#·wpf
从零开始的代码生活_1 天前
C++ 继承详解:访问控制、对象模型、菱形继承与设计取舍
开发语言·c++·后端·学习·算法
云小逸1 天前
【C++ 第七阶段:模板、泛型编程与工程综合详解】
开发语言·c++