计算机系统层次结构中最底层的是机器语言层,也有说是计算机硬件系统、机器硬件。计算机系统层次结构,指的是计算机系统由硬件和软件两大部分所构成,而如果按功能再细分,可分为7层。其中最底层的是硬联逻辑级。第零级是硬联逻辑级,这是计算机的内核,由门,触发器等逻辑电路组成。

一、人类关于计算领域的发展

人类的祖先从树上下来以后开始了一轮新的生存挑战。与其他动物相比人类没有尖牙厉爪,只能去发展大脑,随着大脑的发展人类逐渐的站在了食物链的顶层。但是受制于人类活动和自然因素的发展,许多大型动物越来越少,所有人类从最开始的狩猎生活逐步发展成了定居的生活,人类开始种植粮食和养殖一些动物,那么统计和记录这些动物的方式就出现了。

最早期的人类将自己养的牛羊的数量画在一根根的骨头上,假设我们用一条横线代表一头羊,随着人类生活越来越丰富,羊群的数量也越来越多,那么在骨头上画的线也就越来越多,数起来也就原来越麻烦,于是有些聪明的人就发现我们为什么不将每10个横线重新做一个标记,比如用一根竖线,这样我们数羊的时候我先数有几个竖线然后在数有多少横线。

随着人类的发展人类进入了农业文明,需要存储和交易粮食也越来越多,这样就需要一种计算器来代替人脑的直接计算就是---算盘

我们用最右边的珠子代表1,每五个珠子代表进1,即5进制。

人类进入第三次工业革命以后发明了电力,电力开始发展,后来人们发现2进制可以转化为10进制,并且发现可是使用电路来代表0和1,1代表5v高电平,0代表0符低电平。通电和不通电两种状态就产生了人类历史上的一个重要的工具--晶体管。

最开始还不是使用晶体管,一开始使用的是---正空管。正空管的工作原理类似于我们以前的电灯泡,当通电的时候就会发射电子到我们的接收节点上,我们就会判断是高电位,否则为0。但是真空管的缺点是容易坏。(一通电一断电来来回回,马上就会烧掉)。--直到发现二极管。

硅(本身不导电)-》加入特殊元素-》P半导体 N半导体-》PN节-》二极管-》场效应晶体管-》逻辑开关。(通电代表1,断电代表0)

半导体:单项导通性

我们可以通过对逻辑开关的改造成 ,逻辑与,或,异或,与非,或非,异或非等门,然后将他们当成最基本元素不断的搭建就会形成了加法器,在计算机当中一切的计算的基础就来源于加法器。

从上边我们可以得到一个结论:计算机的核心在于找到一种数字,并且找到一种方式让这些数字进行运算

二、计算机语言的发展

从上边的讲解当中我们发现计算机的底层是由一个个的电器组建组成的,通过导线来传递高低电压。

多个电路板之间通过形成闭合电路。由于硬件设置和内部结构的不同,就需要不同的电压来控制。所以每一个电器件都有自己的机器指令集,也就是机器语言。

机器语言通过存储101110的形式弄出数据

机器语言采用的是0101001这样的编码形式,他是如此的难于辨别和记忆,给整个产业发展带来了障碍。于是汇编语言就形成了

汇编语言是将大部分的有规律的机器语言进行提取,编程人员只需要记住相应的汇编指令(英文单词)就可以直接操作机器硬件。

0:----》0

1:-----》1

2:----》10

3:----》11

4:----》100

那么我们会得到以下比特流:

011011100

但是这样做会出现歧义性, 那如何解决这个问题呢?-----按固定字符进行分割

比如这里我们用8比特进行字符的分割

那么我们储存以上的数据就会变成

0000000000000001000000100000001100000100

welcome to masm  =  ⬇

em,多少是能读了,但感觉也只能读了。眼睛看起来有亿点麻烦

将汇编语言进行优化

但是汇编语言对一些逻辑处理并不是很友好,比如循环,判断等等,写这样的语句还是非常麻烦的,于是我们在汇编语言上进行了优化,形成了C语言。C语言是典型的面向过程的语言

第三代语言中,C语言是最重要的!可以称之为“现代语言的鼻祖”。其他很多语言都跟C语言有千丝万缕的联系!

C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。

从当前这个脉络当中我们可以看出C语言是可以控制每个器件的出入电压。

我们将每个器件的使用都封装成相应的程序

在计算计当中每一个硬件都对应着一个驱动,我们程序员只需要知道驱动当中有哪些方法,用来驱动我们的硬件的功能

操作系统内核

我们每一个驱动都对应着一个硬件,但是我们正常使用的一个程序一般都会使用多个驱动协同工作

java一:计算机底层结构相关推荐

  1. [java] 虚拟机(JVM)底层结构详解[转]

    [java] 虚拟机(JVM)底层结构详解[转] 本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.net/csh624366188 在以前的博客里面,我们介绍了在java领 ...

  2. Java(计算机底层——二进制到汇编)(先导课)

    Java(计算机底层--二进制到汇编)(先导课) 参考视频:最通俗易懂的计算机底层教学,二进制到汇编学习!(狂神) 1. 概述 语言 进制 进制如何运算 二进制 数据宽度 有符号数和无符号数 原码反码 ...

  3. Java程序猿从笨鸟到菜鸟之(九十二)深入java虚拟机(一)——java虚拟机底层结构具体解释...

    本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.net/csh624366188 在曾经的博客里面,我们介绍了在java领域中大部分的知识点,从最基础的java最基本的语法 ...

  4. 简单计算机java程序_JAVA程序员需要知道的计算机底层基础10-操作系统引导程序的简单...

    JAVA程序员需要知道的计算机底层基础10-操作系统引导程序的简单 JAVA程序员需要知道的计算机底层基础10-操作系统引导程序的简单制作 汇编实现引导程序 ; 文件名 boot.asm org 7c ...

  5. 一网打尽:Java 程序员必须了解的计算机底层知识!

    公众号后台回复"面试",获取精品学习资料 扫描下方海报了解专栏详情 本文来自公众号读者cxuan的投稿 我们每个程序员或许都有一个梦,那就是成为大牛,我们或许都沉浸在各种框架中,以 ...

  6. Java基础笔记(2)——HashMap的源码,实现原理,底层结构是怎么样的

    Java基础笔记(2)--HashMap的源码,实现原理,底层结构是怎么样的 HashMap的源码,实现原理,底层结构 1.HashMap: HashMap是基于哈希表的 Map 接口的实现.此实现提 ...

  7. 聊聊Java系列-集合之HashMap底层结构原理

    前言           由于HashMap在我们的工作和面试中会经常遇到,所以搞懂HashMap的底层结构原理就显得十分有必要了.在JDK1.8之前,HashMap的底层采用的数据结构是数组+链表, ...

  8. 计算机底层:CPU结构与组成原理、工作原理

    CPU:中央处理器(CPU,英语:Central Processing Unit / Processor),是电子计算机的主要设备之一,电脑中的核心配件.其功能主要是解释计算机指令以及处理计算机软件中 ...

  9. [转]从根上理解高性能、高并发:深入计算机底层,理解线程与线程池

    系列 <从根上理解高性能.高并发(一):深入计算机底层,理解线程与线程池> <从根上理解高性能.高并发(二):深入操作系统,理解I/O与零拷贝技术> <从根上理解高性能. ...

最新文章

  1. 如何编写webService接口
  2. 机器人操作系统来到Windows
  3. POJ2239简单二分匹配
  4. android 理解Fragment生命周期
  5. 【转】MySQL索引和查询优化
  6. Android studio 老虎机小游戏
  7. 图像边缘检测的新方向——量子算法
  8. PHP数字金额转换成中文大写金额
  9. 京东金融App崩溃治理实践
  10. openwrt校园网自动登录且断网重连
  11. 声纹采集器和声纹数据库在公安领域的应用
  12. iOS goback页面刷新问题
  13. linux系统登陆微信,在Deepin 20系统下实现电脑端登陆两个微信账号的方法
  14. 十大干货安全议题,足以展望今年网络安全趋势
  15. 2、MySQL数据库-表的修改
  16. 计算机无法在安全模式下完成安装,我的电脑中了一种病毒,在安全模式下、微系统模式下都无法把它格式化,甚至重分区再低格后重装系统都不行啊...
  17. 计算机多媒体的结论,计算机多媒体对初中物理教学的应用
  18. 流量就是这么省出来的
  19. 神经网络语音分离必读论文、代码、教程、公开数据集整理分享
  20. CTF密码学部分知识总结(一)

热门文章

  1. android双日期选择器,AndroidPicker 安卓选择器类库,包括日期选择器、时间选择器、单项选择器、双项选择器、城市地址选择器、车牌号选择器 @codeKK Android开源站...
  2. 简繁转换的VBS代码
  3. 695. 岛屿的最大面积 中等
  4. 《C++ 开发从入门到精通》——2.3 必须遵循的编码规范
  5. kubernetes报错笔记 (一) calico报错
  6. 拉伯证券|北向资金1月净买入超1400亿,啥信号?
  7. SpringCloud Alibaba——精读Nacos+CMDB+核心源码阅读(7w字长篇)
  8. 微软.NET FrameWork离线运行库合集 v2021.09.07
  9. 《大厂高并发分布式锁从入门到实战》第3讲之Redisson分布式锁
  10. android开发 视图联动_仿支付宝“全部应用”模块,联动布局的demo