微型计算机的断代,第一章——微型计算机系统接口技术描述

也不知道想什么。大四忙着找工作的时候还想到处学点其他的东西,感觉自己挺贪心的。这本就是在图书馆找的有关汇编语言方面的书,也不知道和我这种学软件的人理解的汇编语言有多大出入哎。

教课书常理——第一章先讲讲历史搭搭框架,反正了解了解,感受下前人的聪明,具体是什么就没那么有兴趣知道了。

首先是1873年,F. Baldwin制造出了手摇式机械计算器。然后到了1946年约翰·莫克莱博士和他的研究生研制出了世界上第一台电子计算机ENIAC(电子数字积分计算器)。之后计算机的硬件飞速发展,从计算器处理器上说就是发展了一到五代微型处理器。关于处理器我没怎么分清,感觉上应该是按照处理器的字节长度分的吧,第一代是4或者8位的,第二代是8位,三——16位,四——32位,五——64位(这个还是准64位。。。16年的书应该差的不是很多),时间的话是隔得很近的(真飞速发展)。之前为了查具体的名字看了下好像说ENIAC是第一台通用计算机,ABC才是第一台电子计算机。然后我印象中的1912图灵机应该属于计算器。 ↑↑↑具体什么的还是去百度比较好。

a4c26d1e5885305701be709a3d33442f.png

微型计算机的分类:入力したくない。

微处理器:

a4c26d1e5885305701be709a3d33442f.png

微型计算器:

a4c26d1e5885305701be709a3d33442f.png

微型计算机系统:

a4c26d1e5885305701be709a3d33442f.png

计算机中数的表示

终于看到了些可以用计算来处理的问题了,标配数学专业的学生还是喜欢有计算的东西些。这个地方主要说了下二进制、八进制、十进制、十六进制的表达方式和转化方法、算术运算、逻辑运算。

二进制:1101101.1101B 八进制:155.64O 十进制:109.8125D 十六进制:6d.dH(开头字母时需头部加0) 以上是109.8125的各个进制的表达方式。二、八、十六进制直接的转化很方便,通常转化成二进制之后就可以直接转化为八或十六进制。提一下十→二,其他的各个进制直接的转化都和这方法一样。a4c26d1e5885305701be709a3d33442f.png

PS:小数部分不一定能完全精准的转化,可按照精度要求转化。

算术运算上有加减乘除,原理上和十进制的算术运算都一样。

逻辑运算主要包括:

与(AND、· 、× 、∩ 、∧) 规矩为:0×0=0;0×1=1;1×0=1;1×1=1;

或( OR 、+

、∪

、∨) 规矩为:0+0=0;0+1=0;1+0=0;1+1=1;

非(NOT、在逻辑变量上加一横线) 规矩为:非0为1;非1为0;

异或(XOR、⊕) 规矩为:0⊕0=0;0⊕1=1;1⊕0=1;1⊕1=0;

计算机采用二进制,运算器运算的是二进制数,控制器发出的各种指令也是表示成二进制数,存储器中存放的数据和程序也是二进制数,在网络上进行数据通信时发送和接收的还是二进制数。所以可见,在计算机内部到处都是0和1组成的数据流。

计算机中最小的数据单位是二进制的一个数位(Bit)。

字节(Byte):简写为B,通常采用8位表示一个字节。是计算机中用来表示存储空间大小的基本容量单位。

1B=8bit

千字节 (KB) 1KB=1024B=2^10B

兆字节 (MB) 1MB=1024KB=2^20B

十亿字节(GB) 1GB=1024MB=2^30B

1TB=1024GB=2^40B

字(Word):在计算机中作为一个整体被存取、传送、处理的二进制字符串叫做一个字或单元。每个字的二进制位数的长度称为字长,通常有8位、16位、32位、64位。通常叫32位为双字,64位为4字。

数连同符号在计算机中数值化表示称为机器数,通常有三种码制来表示(原码、补码、反码)。大多数计算机用补码表示,感觉是因为对运算器的要求低点。

原码:最高位表示符号(正数用0,负数用1),其他位表示数值位,称为用符号数的原码表示法。

X=45D=+101101B [X]原=00101101B

Y=-45D=-101101B [Y]原=10101101B

PS:异号的加法需要改给减,估计还要逻辑判断下正负。

反码:正数的反码和原码相同,负数的反码符号位用1表示,数值位为原码数值位按位取反形成。

[X]原=00101101B [X]反=00101101B

[Y]原=10101101B [Y]反=11010010B

PS:为了减法运算转化为加法运算引进了反码和补码,但感觉反码依旧要逻辑判断下正负。

补码:正数的补码和原码相同,负数用2^n-丨X丨来表示(n为机器的字长),简单点就是反码加1。

[X]原=00101101B [X]补=00101101B

[Y]原=10101101B

[Y]反=11010010B [Y]反=11010011B

PS:补码0就一种表达方式,字节长为8时,取值范围为-128~127。

[X+Y]补=[X]补+[Y]补;[X-Y]补=[X]补+[-Y]补;

同号相加和异号相减都不需要判读符号,异号相加可转换为同号相减。

上面两式用补码的标准表达方式是直接推出等式成立滴。并且不需要逻辑判断正负。

感觉是用溢出解决了,2^n+丨X丨但没得n+1位来表示2^n所以就直接表示成了丨X丨

无符号整数:没得符号位,使数的表达范围往正整数方向挪了很多。

非数值信息的表示:主要是ASCII码、BCD码(8421码,通常在输入输出多使用十进制数时使用)、GB2312码(用于满足汉字和一些其他语言需要),目前好像UTF-8用的多些。

微机系统中的接口问题

终于要码玩了,看书都没这么麻烦,最后全是字哎。

通常将两个部件之间的交接部位称为接口(或称为界面),这个部件既可以是硬件也可以是软件。主机实际上是通过系统总线连接到接口,在通过接口与外部设备相连接。例如:磁盘接口位于磁盘驱动器和系统总线之间。各设备公用的接口逻辑如中断控制器、DMA控制器等往往集成在主板上。

微机接口是CPU和输入、输出设备之间进行连接和沟通的部件,如IDE接口、USB接口。

CPU在与I/O设备进行数据交换时通常存在(速度不匹配、时序不匹配、信息格式不匹配、信息类型不匹配)问题。所以嘞,接口通常要有这些功能(设置数据的缓存、能够进行格式的转化,如串行转并行、能够协调CPU和外设在信息类型和电平的差异、协调时序差异、地址译码和设备选择功能、设置中断和DMA控制逻辑)

CPU通过接口对外设进行控制的方式有下面几种:

程序查询方式

中断处理方式

DMA传送方式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值