计算机编程背景

1年前未命名150
计算机编程背景 补集王子 于2023-01-18 21:33:48发布 459 收藏 12 分类专栏: JavaEE 文章标签: java JavaEE 专栏收录该内容 2 篇文章 0 订阅 订阅专栏

💖 欢迎来阅读子豪的博客(JavaEE篇 🤴) 👉 有宝贵的意见或建议可以在留言区留言 💻 欢迎 素质三连 点赞 关注 收藏 🧑‍🚀码云仓库:补集王子的代码仓库 不要偷走我小火车哦~ ~ ~

目录🍔🍕🍟🌭🍿🥓🍞🥐 🎥计算机发展史🎤专用计算机🔊通用计算机 🥇冯·诺依曼体系结构🎇 CPU(中央处理器)🪓GPU 🔪 逻辑门🎆输入输出 💎编程语言⚾机器语言🥎汇编语言🏀高级语言 🎨操作系统

🎥计算机发展史

第一代计算机 特征是采用电子管作为主要元器件

第二代计算机 特征是采用晶体管作为主要器件

第三代计算机 特征是半导体中小规模集成电路

第四代计算机 特征是大规模和超大规模集成电路 我们现在一般的电脑,称之为"微机" “通用计算机”

🎤专用计算机

最早是用在军事用途上,计算导弹轨迹的 最开始人们计算弹道轨迹是手动计算的,为了解决这一难题 历史上第一个计算机"埃尼阿克"应运而生,它是专用计算机,不是通用计算机,运行速度CPU主频 5000hz,重大几十吨,占地位置好几个房间,计算速度远远超过人工速度(打算盘)

🔊通用计算机

随着时间与需求的变化,因德军engima(英格玛)机器加密,然图灵研究了engima底层,用机器破译机器加密,推动了后来的,诺曼底登陆(攻守易势) 图灵提出了"通用计算机"这个愿景,最终由冯诺依曼设计实现

🥇冯·诺依曼体系结构

计算机的祖师爷 – 冯·诺依曼"现代计算机之父"最早在普林斯顿提出的通用计算机该有的基本体系结构,冯·诺依曼提出了计算机制造的三个基本原则,即采用二进制逻辑、程序存储执行以及计算机由五个部分组成(运算器、控制器、存储器、输入设备、输出设备)

🎇 CPU(中央处理器)

CPU是计算机系统最核心的部分,进行算术运算和逻辑判断,是人类目前科技的"巅峰之作"

现在市面上最多的就是5nm的,为啥目前做不出更小的?因为小于5nm经典物理学就失效了,需要量子物理来接管,人才不够,需要我们去补充!!!(兄弟们加油!)

CPU最主要的指标叫做"主频"如2.5Ghz,描述了CPU运算速度

指令(Instruction) 首先,我们先介绍下我们需要到的指令(instruction)。 所谓指令,即指导 CPU 进行工作的命令,主要有操作码 + 被操作数组成。 其中操作码用来表示要做什么动作,被操作数是本条指令要操作的数据,可能是内存地址,也可能是寄 存器编号等。 指令本身也是一个数字,用二进制形式保存在内存的某个区域中。

CPU 中的 PC 寄存器,是决定 CPU 要执行哪条指令的关键;指令是由 动作 + 操作对象组成CPU 眼中只有指令,没有其他的概念 🪓GPU

我们平时所说的显卡GPU定位于CPU类似,GPU专用计算机芯片(图形相关的运算,人工智能,挖坑等,计算难度不难只是量大,用CPU的话就大材小用了),CPU叫通用计算机芯片

🔪 逻辑门

门电路,与或非门 借助于二极管等设备特殊物理特性 简单的逻辑门可由晶体管组成。这些晶体管的组合可以使代表两种信号的高低电平在通过它们之后产生高电平或者低电平的信号。高、低电平可以分别代表逻辑上的“真”与“假”或二进制当中的1和0,从而实现逻辑运算。

通过这些门电路,衍生出了异或门,半加器(两个bit位相加)/全加器(三个bit位相加),加法器,可以针对二进制的数组相加,可以多位相加,可以算加法也可以算减法(补码)

🎆输入输出

计算机与人交互的设备

如键盘鼠标麦克风摄像头,显示器音响等 还有的设备既可以输入也可以输出,触摸屏,网卡

💎编程语言

程序员与计算机直接的沟通桥梁 与自然语言有区别,必须要"严谨,无歧义" 现存的计算机语言可以大体分为三类"机器语言" “汇编语言” “高级语言”

⚾机器语言

二进制,0/1构成的指令,CPU就处理这个,CPU厂商在设计的时候会设计好二进制"指令集",相当于为CPU提供API,但是人类不太好理解机器语言

🥎汇编语言

通过一些简单的单词来作为"助记符"来代替二进制的指令,与机器语言一一对应 不同的CPU有不同的指令架构,导致了汇编语言不一样 学习汇编语言的时候要明确是针对哪个系列的 CPU

🏀高级语言

C C++ C#(C Sharp,4#) Java Python PHP

🎨操作系统

操作系统是一个软件,负责管理软件 特征是 并发、共享、虚拟、异步

对上: 管理硬件设备 对下: 给软件运行提供稳定的环境 驱动,就像硬件中的适配器

操作系统是软件和硬件以及用户之间交互的媒介 最熟悉的操作系统Windows(使用门槛低更符合大众),Linux程序员必须要掌握的系统(适合开发和部署)

以后我还会发更多的编程知识供大家阅读,喜欢的话就请点个**关注**吧~~~

标签: [db:标签TAG]

相关文章

一文说清楚http、tcp、socket、websocket区别

一文说清楚http、tcp、socket、websocket区别...

如何轻松解决C盘爆满情况——SpaceSniffer

如何轻松解决C盘爆满情况——SpaceSniffer...

带你走进API安全的知识海洋

带你走进API安全的知识海洋...

《安富莱嵌入式周报》第304期:开源硬件耳机设计,AI单片机STM32N6已确定为M55内核,另外还有新品STM32H5, H50X, H7R, H7S发布

《安富莱嵌入式周报》第304期:开源硬件耳机设计,AI单片机STM32N6已确定为M55内核,另外还有新品STM32H5, H50X, H7R, H7S发布...

如何用python代码,更改照片尺寸,以及更换照片底色

如何用python代码,更改照片尺寸,以及更换照片底色...

【Spring6】| Spring对IoC的实现(核心重点)

【Spring6】| Spring对IoC的实现(核心重点)...