出于好奇:代码只如何运行的?或者说更底层的一些东西是如何实现的?

2020-04-04 14:25:50 +08:00
 Mrzhs

我们是使用微信的时候,用户只需要用它提供给我的一些“接口”例如发送功能,而程序员就是写这些接口的,那么这么多语言(例如,C,html,java )到最后是如何运行的? 把这些语言看成这些语言开发者提供给程序员的接口,让我们去使用,在这些语言开发者之上还有什么? 脑洞:计算机硬件的一些“规则”,然后语言开发者根据这些“规则”写出了各种各样的语言. 是这样吗?有这一类更底层的博文或者书籍吗? for example:超市里出售的葡萄酒,只需要打开瓶盖就可以喝了(用户层),而这些酒需要酿酒厂用葡萄酿酒,检查品质等等一系列工作(程序员层),那么在网上一层,这些葡萄是如何长成的? (感觉自己是个老千层饼了~)

8370 次点击
所在节点    程序员
96 条回复
Mrzhs
2020-04-04 15:36:42 +08:00
@masker 这是第几层?
alphatoad
2020-04-04 15:44:23 +08:00
晶体管,flip flop, latch, registers, ALU, 内存,汇编,外存,操作系统,编译器,网络栈
要回答这个问题就是本科的任务,能答出来就毕业了,耗时四年
kamilic
2020-04-04 15:47:33 +08:00
https://item.jd.com/11116026.html
不那么学术的话,这本书也说得挺好的
alphatoad
2020-04-04 15:48:37 +08:00
有句话怎么说的来着,一个合格的本科生至少要能(理论上)用一坨原子搭建出我们现在在用的计算机
wenzhoou
2020-04-04 16:04:18 +08:00
之前有个视频讲得挺好的。crash course computer science
可以去看看,通俗易懂。
danbai
2020-04-04 16:05:10 +08:00
推荐楼主去看看这个 https://b23.tv/BV1EW411u7th/p1
Mrzhs
2020-04-04 16:20:08 +08:00
@kamilic 感谢
Mrzhs
2020-04-04 16:21:32 +08:00
@wenzhoou 楼下已经发出来了
crella
2020-04-04 16:21:33 +08:00
crud 码农

sdk 程序员
lzyliangzheyu
2020-04-04 16:22:06 +08:00
把 EE 的课程学了,就能从物理上理解底层的运转方式
lzyliangzheyu
2020-04-04 16:26:26 +08:00
物理世界是模电,数字世界是数电,这两者之间的转换又涉及到采样调制解调,然后这里又细分为通信工程的领域,经过这一环,各种电信号才会变成计算机处理的二进制信号
leoleoasd
2020-04-04 16:33:07 +08:00
安利一个 Coursera 上的公开课, "从与非门到俄*斯方块", From nand to tetris.

不需要任何基础, 完整听完就能做到 在自己写的 cpu 上跑自己的操作系统上跑自己的俄*斯方块
leoleoasd
2020-04-04 16:33:31 +08:00
?????? 俄罗 asdasd 斯居然是关键词
smyle
2020-04-04 16:37:25 +08:00
严重推荐你一本《编码: 隐匿在计算机软硬件背后的语言》(code: the hidden language of computer hardware and software),作者是 Windows 编程界传奇人物 Charles Petzold
书从两个小孩用手电筒一亮一暗打暗号给你讲起,你会逐渐明白代码是如何转换成电信号,这些电信号又如何存储、作用在硬件上
ljpCN
2020-04-04 17:06:34 +08:00
刚想推荐 code 发现楼上推荐了,那就推荐一个深入理解计算机系统吧😜
StefanJ
2020-04-04 17:11:32 +08:00
Mrzhs
2020-04-04 17:26:21 +08:00
@StefanJ 没了。
Mrzhs
2020-04-04 17:26:43 +08:00
@smyle 多谢科普
Mrzhs
2020-04-04 17:27:37 +08:00
@leoleoasd 多谢
YuxiangLuo
2020-04-04 17:39:04 +08:00
https://www.youtube.com/playlist?list=PLD495612D7E420544

这个课程是从麦克斯韦方程往上推的,也挺有趣。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/659337

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX