美文网首页
计算机原理+操作系统+网络学习札记

计算机原理+操作系统+网络学习札记

作者: Chaos_YM | 来源:发表于2019-08-06 17:52 被阅读0次

    本篇为计算机原理部分
    为增加可读性三部分分为三篇文章,另外两片链接如下:
    计算机基础网络篇
    计算机基础操作系统篇

    一,冯诺依曼机

    现代的计算机都属于冯诺依曼机。创造了通用电路与程序指令构成的可塑性极强的计算机。
    包括输入设备,输出设备,控制器,运算器,储存器


    二,计算机层次与编程语言

    程序翻译:编译器将高级程序,翻译为计算机底层编码,生成新的,由低级语言组成的程序的过程。
    例:C/C++、golang

    程序解析:由一个低级语言编写的解释器,将高级程序语言的每个语句作为输入,转换为计算机底层码并执行,不生成新的程序
    例:python、php、JS

    JAVA,C#属于两种混合

    20190806181621.jpg

    硬件逻辑层:门,触发器等逻辑电路
    微程序机器层:微指令集
    传统机器层:CPU指令集,机器指令
    操作系统层:向上提供管理界面,向下对接指令系统,管理资源
    汇编语言层:
    高级语言层:编程语言,Python,C,JS等
    应用层:app,软件


    三,计算机的计算单位(容量与速度)

    • 容量单位(M,G,T)
      物理层面,高低电平记录信息,高电平是1,低电平是0,是一个bit,比特位
      一个字节单位 = 8bits


      捕获.PNG
    • 速度单位
      网络速度 : 100M光纤 == 12M/S的峰值
      速度单位Mbps => Mbits/s,所以有以上对应
      CPU速度 : 时钟频率,单位赫兹Hz
      2GHz = 2 * 1000^3 Hz = 每秒20亿次(高低电平的变化次数)


    四,字符与编码集

    • ASCII码(共128个 = 33 + 95 = 2^7)
      7个bits即可表示 / 95个可打印字符 / 33个不可打印字符(包括控制字符)
    • extend ASCII
    • 字符编码集的国际化(中文编码集)
      GB2312(收录了6763个汉字和682个符号)
      GBK(兼容GB2312,收录21003个汉字,支持全部中日韩汉字)
    • Unicode(全球字符集)
      UTF-8 即以字节为单位对Unicode编码

    windows系统默认使用GBK编码


    五,计算机的组成

    1.计算机总线

    USB:uuniversal serial bus通用串行总线
    PCI总线,ISA总线等等。。。。解决了不同设备之间的通信问题

    • 总线的分类:
      片内总线:芯片内部
      系统总线:链接计算机各种设备(数据总线,地址总线,控制总线)
    • 总线的仲裁:
      不同设备使用总线的优先顺序

    2.存储器

    • 分类:
      介质:半导体(内存,U盘),磁力(磁带,磁盘)
      方式:RAM(随机存储器,内存条),串行存储器,只读存储器ROM
    • 层次结构:
      读写速度:5400/7200转的硬盘
      存储容量:G,T


      微信截图_20190807210842.png
      微信截图_20190807210917.png

    计算机的主存储器(RAM)与辅助存储器(硬盘,即磁盘)

    • 内存(RAM)通过电容存储数据,断电后,数据会丢失
      内存通过地址总线和数据总线与CPU链接。32位系统,最大支持4G内存,因为32位系统的地址总线,只有32位,最多寻址2^32 = 4GB。
    • 高速缓存
      工作原理:命中率,访问效率等
      替换策略:几种替换策略
    • 指令系统:
      机器指令:操作码+地址码(零地址,一地址,二地址,三地址)
      操作类型:数据传输,算数逻辑,移位操作,控制指令
      寻址方式:指令寻址(顺序,跳跃),数据寻址


      微信截图_20190807222053.png
    • 控制器(CPU)


      WX20190808-120003@2x.png
    • 运算器(CPU)


      WX20190808-120337@2x.png
    • 指令的执行过程


      WX20190808-121905@2x.png
      WX20190808-122032@2x.png

      以上步骤,控制器与运算器不能同时工作,为提高效率:


      WX20190808-122234@2x.png

    六,计算基础

    1.进制
    二进制 1024 = 0b100000000
    八进制 1024 = 0o2000
    十六进制 1024 = 0x400
    2.转换方法
    3.符号数(±)

    • 原码表示法:(比较原始)
      第一位为符号位
      0表示正数,1表示负数
      +237 = 011101101
      -237 = 111101101


      WX20190809-174134@2x.png
    • 补码表示法:


      WX20190809-175134@2x.png
    • 反码表示法


      WX20190810-120645@2x.png
      WX20190810-122143@2x.png

    4.定点数与浮点数,及其运算

    • 定点数与比例因子

    5.算法实践

    实践内容:用双向链表实现以下三种算法

    • FIFO算法(先进先出)
    • LRU算法(最近最少使用)
    • LFU(最不经常使用)
    • 双向链表
      优点:快速找到上一个和下一个节点,快速去掉某个节点
      实现一个双向链表:
      节点类,链表类,链表的私有方法和外部API
      即可用双向链表,实现以上算法


      WX20190812-154939@2x.png

    相关文章

      网友评论

          本文标题:计算机原理+操作系统+网络学习札记

          本文链接:https://www.haomeiwen.com/subject/joiwdctx.html