《跟我一起学“网络安全”》——计算机基础

计算机基础

一、计算机发展简史

  1. 计算机发展历史与未来
    世界上第一台通用计算机“ENIAC”于1946年2月14日在美国宾夕法尼亚大学诞生。发明人是美国人莫克利(JohnW.Mauchly)和艾克特(J.PresperEckert)。
    ENIAC,世界上第一台电子计算机,占地170平方米,重达30吨,耗电功率约150千瓦,每秒钟可进行5000次运算。被美国国防部用来进行弹道计算。
    ENIAC
    计算机发展历程

  2. 冯诺依曼体系
    冯诺依曼体系结构五大组成部分:运算器、控制器、存储器、输入设备、输出设备
    运算器: 计算机中执行各种算术和逻辑运算操作的部件。 运算器的基本操作包括加、减、乘、除四则运算,与、或、非、异或等逻辑操作,以及移位、比较和传送等操作,亦称算术逻辑部件(ALU);
    控制器: 由程序计数器、指令寄存器、指令译码器、时序产生器和操作控制器组成,它是发布命令的“决策机构”,即完成协调和指挥整个计算机系统的操作。运算器和控制器统称中央处理器,也叫做CPU。 中央处理器是电脑的心脏;
    存储器: 存储器分为内存和外存。 内存是电脑的记忆部件,用于存放电脑运行中的原始数据、中间结果以及指示电脑工作的程序。外存就像笔记本一样,用来存放一些需要长期保存的程序或数据,断电后也不会丢失,容量比较大,但存取速度慢。当电脑要执行外存里的程序,处理外存中的数据时,需要先把外存里的数据读入内存,然后中央处理器才能进行处理;
    输入设备: 输入设备是向计算机输入数据和信息的设备。 是计算机与用户或其他设备通信的桥梁。输入设备是用户和计算机系统之间进行信息交换的主要装置之一;
    输出设备: 是计算机硬件系统的终端设备,用于接收计算机数据的输出显示、打印、声音、控制外围设备操作等。 也是把各种计算结果数据或信息以数字、字符、图像、声音等形式表现出来。

  3. 计算机软件和硬件
    一个完整的计算机系统是由硬件和软件两部分组成的。 硬件是组成计算机的物理实体。 但仅有硬件计算机还不能工作,要使计算机解决各种问题,必须有软件的支持,软件是介于用户和硬件系统之间的界面。
    “软件”一词 20世纪60年代初传入我国。国际标准化组织(ISO)将软件定义为:电子计算机程序及运用数据处理系统所必需的手续、规则和文件的总称。对此定义,一种公认的解释是:软件由程序和文档两部分组成。 程序由计算机最基本的指令组成,是计算机可以识别和执行的操作步骤;文档是指用自然语言或者形式化语言所编写的用来描述程序的内容、组成、功能规格、开发情况、测试结构和使用方法的文字资料和图表。程序是具有目的性和可执行性的,文档则是对程序的解释和说明。
    程序是软件的主体。软件按其功能划分,可分为系统软件和应用软件两大类型。

  4. 计算机操作系统
    操作系统是系统软件的核心。为了使计算机系统的所有资源(包括硬件和软件)协调一致、有条不紊地工作,就必须用一个软件来进行统一管理和统一调度,这种软件称为操作系统。它的功能就是管理计算机系统的全部硬件资源、软件资源及数据资源,从图中可以看出,操作系统是最基本的系统软件,其他的所有软件都是建立在操作系统的基础之上的。操作系统是用户与计算机硬件之间的接口,没有操作系统作为中介,用户对计算机的操作和使用将变得非常难且低效。操作系统能够合理地组织计算机整个工作流程,最大限度地提高资源利用率。操作系统在为用户提供一个方便、友善、使用灵活的服务界面的同时,也提供了其他软件开发,运行的平台。它具备五个方面的功能,即CPU管理,作业管理,存储器管理,设备管理及文件管理。 操作系统是每一台计算机必不可少的软件,现在具有一定规模的现代计算机甚至具备几个不同的操作系统。操作系统的性能在很大程度上决定了计算机系统工作的优劣。
    软件、操作系统、硬件的关系

  5. 计算机系统构成
    计算机系统硬件系统软件系统来构成。
    计算机硬件是构成计算机系统各功能部件的集合。 是由电子、机械和光电元件组成的各种计算机部件和设备的总称,是计算机完成各项工作的物质基础。计算机硬件是看得见、摸得着的,实实在在存在的物理实体。
    计算机软件是指与计算机系统操作有关的各种程序以及任何与之相关的文档和数据的集合。 其中程序是用程序设计语言描述的适合计算机执行的语句指令序列。
    没有安装任何软件的计算机通常称为“裸机”,裸机是无法工作的。 如果计算机硬件脱离了计算机软件,那么它就成为了一台无用的机器。如果计算机软件脱离了计算机的硬件就失去了它运行的物质基础;所以说二者相互依存,缺一不可,共同构成一个完整的计算机系统。

  6. 计算机硬件简单工作原理
    首先由输入设备接受外界信息(程序和数据),控制器发出指令将数据送入(内)存储器,然后向内存储器发出取指令命令。在取指令命令下,程序指令逐条送入控制器。控制器对指令进行译码,并根据指令的操作要求,向存储器和运算器发出存数、取数命令和运算命令,经过运算器计算并把计算结果存在存储器内。最后在控制器发出的取数和输出命令的作用下,通过输出设备输出计算结果。

计算机硬件工作原理

  1. 常见计算机硬件
    CPU(中央处理器): 计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。
    CPU
    硬盘: 电脑硬盘是计算机最主要的存储设备。硬盘(Hard Disk Drive, 简称HDD 全名温彻斯特式硬盘)由一个或者多个铝制或者玻璃制的碟片组成。这些碟片外覆盖有铁磁性材料。绝大多数硬盘都是固定硬盘,被永久性地密封固定在硬盘驱动器中。
    硬盘内存: 内存(Memory)是计算机的重要部件,也称内存储器和主存储器,它用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。它是外存与CPU进行沟通的桥梁,计算机中所有程序的运行都在内存中进行,内存性能的强弱影响计算机整体发挥的水平。只要计算机开始运行,操作系统就会把需要运算的数据从内存调到CPU中进行运算,当运算完成,CPU将结果传送出来。内存的运行决定计算机整体运行快慢。
    内存条
    主板: 主板,又叫主机板(mainboard)、系统板(systemboard)、或母板(motherboard),是计算机最基本的同时也是最重要的部件之一。主板一般为矩形电路板,上面安装了组成计算机的主要电路系统,一般有BIOS芯片、I/O控制芯片、键盘和面板控制开关接口、指示灯插接件、扩充插槽、主板及插卡的直流电源供电接插件等元件
    主板显卡: 显卡(Video card、Display card、Graphics card、Video adapter)是个人计算机基础的组成部分之一,将计算机系统需要的显示信息进行转换驱动显示器,并向显示器提供逐行或隔行扫描信号,控制显示器的正确显示,是连接显示器和个人计算机主板的重要组件,是“人机”的重要设备之一。
    显卡
    输入设备: 向计算机输入数据和信息的设备。是计算机与用户或其他设备通信的桥梁。输入设备是用户和计算机系统之间进行信息交换的主要装置之一。键盘,鼠标,摄像头,扫描仪,光笔,手写输入板,游戏杆,语音输入装置等都属于输入设备。
    输出设备: 输出设备(Output Device)是计算机硬件系统的终端设备,用于接收计算机数据的输出显示、打印、声音、控制外围设备操作等。也是把各种计算结果数据或信息以数字、字符、图像、声音等形式表现出来。常见的输出设备有显示器、打印机、绘图仪、影像输出系统、语音输出系统、磁记录设备等。

  2. 存储器和CPU的数据交换
    处理器的速度很快, 为了直观体现,我们通常更喜欢用每秒钟可以执行的指令数来衡量处理器的速度,这个数值在现实中的处理器上是几百万条指令每秒到几亿条指令每秒。
    处理器非常快,但它不是在孤立地工作,需要一大堆外围设备的配合,为它提供数据,遗憾的是这些东西都很慢。
    比如,每次你用U盘复制文件的时候,总能在屏幕上得到一个进度条,这不能怪处理器太慢,是你的U盘不够快。
    用来平衡处理器和内存速度的手段是使用高速缓存技术。这种技术基于计算机运行的一个特点——局部性。通俗地说,局部性的意思是,程序在被执行的过程中常常会访问最近刚刚访问过的数据,或者该位置附近的数据。
    有一种存储器叫静态随机存储器(SRAM),SRAM的优点是速度快,但是制造成本很高,通常不作为内存使用。 不过,基于局部性的原理,可以在处理器和内存之间放置一小块SRAM,当处理器从一个新的内存地址开始执行时,将那一整片的东西都搬到这块SRAM中。这样一来,如果下次要访问的内容正好在SRAM中,就不用再到内存中去取,从而节省了时间。传统上,这一小块SRAM就是高速缓存,也就是我们经常在技术文章里看到的单词“Cache”。

主机的结构
在实际应用的时候,高速缓存有多种组织方案,但是从直观上来说,它好像两张表格,第一个表格存放的是从内存取来的一块块数据,第二个表格则存放每一个数据块所在的内存地址。
高速缓存有一个控制器。平时,中央处理器送出地址,要从内存中取数据时,Cache控制器把该地址同高速缓存中的地址进行比较,以查明该数据是否在高速缓存中。如果要取的数据正好在高速缓存中,那么,很好,这称为“命中”,处理器可以直接拿到数据。处理器从高速缓存中取得数据的时间通常很短,称为“命中时间”。
相反,如果数据不在高速缓存中,称为“不中”。高速缓存不中是非常糟糕的,是最坏的情况。在这种情况下,处理器需要重新装载高速缓存(而不是硬着头皮去访问内存)。装载高速缓存也需要时间,即“不中惩罚”,这意味着执行一条指令需要更多的时间。高速缓存是否能大幅度提升计算机的速度和性能,取决于命中的概率,也就是命中率。

二、数据在计算机中的表示

  1. 数据与信息
    计算机所表示和使用的数据可分为两大类:数值数据字符数据。数值数据用以表示量的大小、正负,如整数、小数等。字符数据也叫非数值数据,用以表示一些符号、标记,如英文字母AZ、az,数字0~9,各种专用字符+、-、*、/、[、]、(、)等及标点符号等。汉字、图形、声音数据也属非数值数据。
    任何形式的数据,无论是数字、文字、图形、图像、声音、视频,进入计算机都必须进行二进制编码转换。
    数据是对客观事物的符号表示。数值、文字、语言、图形、图像等都是不同形式的数据。信息是现代生活和计算机科学中一个非常流行的词汇。信息既是对各种事物变化和特征的反映,又是事物之间相互作用、相互联系的表征。人们通过接收信息来认识事物,从这个意义上来说,信息是一种知识,是接收者原来不了解的知识。
    计算机科学中的信息通常被认为是能够用计算机处理的有意义的内容或消息,它们以数据的形式出现,如数值、文字、语言、图形、图像等。数据是信息的载体。
    数据于信息的区别是:数据处理之后产生的结果为信息,信息具有针对性、时效性。 尽管这是两个不同的概念,但人们在许多场合把这两个词汇互换使用。信息有意义,而数据没有。
    信息同物质、能源一样重要,是人类生存和社会发展的三大基本资源之一。可以说信息不仅维系这社会的生存和发展,而且在不断地推动着社会和经济发展。
  2. 计算机中的数据
    ENIAC计算机是一台十进制的计算机,它采用十个真空管来表示一位十进制数。冯·诺依曼在研制IAS时,发觉这种十进制的表示和实现方式十分麻烦,提出了二进制的表示方法,从此改变了整个计算机的发展历史。
    二进制只有“1”和“0”两个数, 相对十进制而言,采用二进制表示不但运算简单、易于物理实现、通用性强,更重要的优点是所占用的空间和所消耗的能量要小得多,机器可靠性高。
    计算机内部均用二进制数来表示各种信息,但计算机与外部交往仍采用人们熟悉和便于阅读的形式,如十进制数据、文字显示以及图形描述等。其间的转换,则由计算机系统的硬件和软件来实现。
  3. 计算机中数据的单位
    计算机中数据的最小单位是位(即一个二进制位)。存储容量的基本单位是字节。 8个二进制位称为1个字节,此外还有KB、MB、GB、TB等。
    (一)位(bit)
    位是度量数据的最小单位, 在数字电路和电脑技术中采用二进制,代码只有0和1,其中无论0还是1在CPU中都是1位。
    (二)字节(Byte)
    一个字节由八位二进制数字组成(1Byte=8bit)。 字节是信息组织和存储的基本单位,也是计算机体系结构的基本单位。
    为了便于衡量存储器的大小,统一以字节(Byte,B)为单位。常用的是:
    千(K)字节 1KB=1024B
    兆(M)字节 1MB=1024KB
    吉(G)字节 1GB=1024MB
    太(T)字节 1TB=1024GB

    (三)字长
    人们将计算机一次能够并行处理的二进制位称为该计算机的字长。字长是计算机的一个重要指标,直接反映一台计算机的计算能力和计算精度。字长越长,计算机的数据处理速度越快。
  4. 数制的基本概念
    人们日常生活中使用到的数制很多,如我们最熟悉的1斤等于10两(十进制),1年等于12个月(十二进制),1分钟等于60秒(六十进制)等。而计算机科学中经常使用二进制、八进制、十进制和十六进制等,所有的数制我们统称为R进制数。但是在计算机内部,不管什么样的数都使用二进制编码形式来表示。我们首先介绍几个有关数值的基本概念。
    (一)数码
    在一种计数制中,只能使用一组固定的数字符号来表示数目的大小,这些数字符号称为该计数制的数码。例如在十进制中,我们用0、1、2、3、4、5、6、7、8、9这十个符号来表示所有的十进制数,那么0-9被称为十进制数的数码;而我们用0和1来表示二进制数,那么0和1被称为二进制数的数码。
    (二)基数
    一个计数制所包含的数码的个数称为该计数制的基数,用R表示。例如,二进制数的数码是0和1,则二进制数的基数R为2;十进制数的数码是0-9,则十进制数的基数R为10。
    (三)位值(权)
    在任意一种计数制数值中,数码所处的位置不同,代表的数值大小也不同。例如,十进制数777,同一个数码7,因位置不同而意义不同,左起第一个7表示700个(7个100),中间的7表示70个(7个10),最右边的7表示7个(7个1)。因位置的不同我们由右向左将各数码所在的位置称为个位(100)、十位(101)、百位(102)。任意一个R进制数都是由一串数码组成,其中每一个数码所表示的实际值大小,除数码本身的数值外,还与它所处的位置有关,由位置决定的值就称为位值(或位权)。
    任一进制数都可以写成按权展开的形式。例如,十进制数2786.39可以按权展开为如下的和:安权展开
    式中:位权
    等即为每一位的位权(10,其中i的取值方法为:任意一种数值整数部分最低位i取0,向左依次递增,向右依次递减),每一位的数码与该位的权的乘积就是该位的数值。
    (四)进位原则
    在所有进制数中都有一个进位原则,就是R进制一定是“逢R进一”。如十进制数的进位原则就是“逢十进一”,二进制就是“逢二进一”,八进制就是“逢八进一”,十六进制就是“逢十六进一”。
    数制
  5. 数制转换
    (一)非十进制数转成为十进制数
    利用按权展开的方法,可以把任意数制的数转化成十进制数。例如:
    二进制转十进制
    只要掌握了数制的概念,那么将任意R进制数转化成十进制数的方法都是一样的。
    (二)十进制数转换成二进制数
    十进制整数转换成二进制整数,其方法是采用“除2取余”法。具体步骤是:把十进制整数除以2得一商数和一余数;再将所得的商除以2,又得一个新的商数和余数;这样不断地用2去除所得的商数,直到商等于0为止。每次相除所得的余数便是对应的二进制整数的各位数码。第一次得到的余数为最低有效位,最后一次得到的余数为最高有效位。图1为将十进制数100转换为二进制数,结果为(100)D=(1100100)B。
    把十进制小数转换成二进制小数,方法是“乘2取整” ,其结果通常是近似表示。
    上述方法同样适用于十进制数向十六进制数的转换,只是使用的基数不同。

    十进制转二进制(三)二进制数转换成为八进制数
    二进制数转换为八进制数遵循“三合一”原则, 只要将二进制数从小数点开始,整数部分从右向左3位一组,小数部分从左向右3位一组,最后不足3位补0,然后将每一组二进制数转换为十进制数即可。例如:
    二进制转八进制(四)二进制数转换成为十六进制数
    同理,二进制转换为十六进制遵循“四合一”原则, 然后将每一组二进制数转换为十进制数,最后再把十进制数转换为十六进制数即可。例如:
    二进制转十六进制
  6. 西文字符的编码
    字符包括西文字符(字母、数字、各种符号)和中文字符,即所有不可做算术运算的数据。由于计算机是以二进制的形式存储和处理的,因此字符也必须按特定的规则进行二进制编码才能进入计算机。字符编码的方法很简单,首先确定需要编码的字符总数,然后将每一个字符按顺序确定顺序编号,编号值的大小无意义,仅作为识别与使用这些字符的依据。字符形式的多少涉及编码的位数。对西文与中文字符,由于形式的不同,使用不同的编码。
    计算机中的信息都是用二进制编码表示的,用以表示字符的二进制编码称为字符编码。
    计算机中最常用的字符编码是ASCII(American Standard Code for Information Interchange,美国标准信息交换码),被国际标准化组织指定为国际标准。ASCII码有7位码和8位码两种版本。国际通用的是7位ASCII码,用7位二进制数表示一个字符的编码,共有27=128个不同的编码值,相应可以表示128个不同字符的编码,如表所示。
    ASCII码表
    表中对大小写英文字母、阿拉伯数字、标点符号及控制符等特殊符号规定了编码,表中每个字符都对应一个数值,称为该字符的ASCII码值。其排列次序为b6b5b4b3b2b1b0,b6为最高位,b0为最低位。
    从ASCII码表中看出:有34个非图形字符(又称为控制字符)。例如:
    SP (Space)编码是(0100000)B 空格
    CR (Carriage Return)编码是(0001101)B 回车
    DEL (Delete)编码是(1111111)B 删除
    BS (Back Space)编码是(0001000)B 退格

    其余94个可打印字符,也称为图形字符。在这些字符中,从0~9、从A~Z、从a~z都是顺序排列的,且小写比大写字母的码值大32,即位值b5为0或1,这有利于大、小写字母之间的编码转换。有些特殊的字符编码是容易记忆的。如:
    “a”字符的编码为(1100001)B,对应的十进制数是97;则“b”的编码值是(98)D。
    “A”字符的编码为(1000001)B,对应的十进制数是65;则“B”的编码值是(66)D。
    “0”数字字符的编码为(0110000)B,对应的十进制数是48;则“1”的编码值是(49)D。

    计算机的内部用一个字节(8二进制位)存放一个7位ASCII码,最高位置为0。
  • 历史问题
    英语用 128 个字符来编码完全是足够的,但是用来表示其他语言,128 个字符是远远不够的。于是,一些欧洲的国家就决定,将 ASCII 码中闲置的最高位利用起来,这样一来就能表示 256 个字符。但是,这里又有了一个问题,那就是不同的国家的字符集可能不同,就算它们都能用 256 个字符表示全,但是同一个码点(也就是 8 位二进制数)表示的字符可能可能不同。例如,144 在阿拉伯人的 ASCII 码中是گ,而在俄罗斯的 ASCII 码中是 ђ。
    因此,ASCII 码的问题在于尽管所有人都在 0 - 127 号字符上达成了一致,但对于 128 - 255 号字符上却有很多种不同的解释。与此同时,亚洲语言有更多的字符需要被存储,一个字节已经不够用了。于是,人们开始使用两个字节来存储字符。
    各种各样的编码方式成了系统开发者的噩梦,因为他们想把软件卖到国外。于是,他们提出了一个“内码表”的概念,可以切换到相应语言的一个内码表,这样才能显示相应语言的字母。在这种情况下,如果使用多语种,那么就需要频繁的在内码表内进行切换。

三、小结

本章为大家概括的介绍了计算机的发展简史,以及数据在计算机中的表示(编码、进制转换),为此,大家对计算机也许有了一些简单的理解,下一章,我会为大家详细的介绍Windows操作系统的相关知识,敬请期待吧~~~

  • 23
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学徒钝子生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值