- 博客(17)
- 收藏
- 关注
转载 钟周期、机器周期、指令周期的概念及三者之间的关系
时钟周期也称为振荡周期,定义为时钟脉冲的倒数(可以这样来理解,时钟周期就是单片机外接晶振的倒数,例如12M的晶振,它的时间周期就是1/12 us),是计算机中最基本的、最小的时间单位。 在一个时钟周期内,CPU仅完成一个最基本的动作。对于某种单片机,若采用了1MHZ的时钟频率,则时钟周期为1us;若采用4MHZ的时钟频率,则时钟周期为250us。由于时钟脉冲是计算机的基本工作脉冲,
2013-12-12 14:49:22
1360
转载 函数与映射的区别和联系
一、相关概念1.函数的概念一般地,设A、B是两个非空的数集,如果按某种对应法则f,对于集合A中的每一个(任意性)元素x,在集合B中都有(存在性)唯一(唯一性)的元素y和它对应,这样的对应叫做集合A到集合B的一个函数(三性缺一不可)函数的本质:建立在两个非空数集上的特殊对应这种“特殊对应”有何特点:1).可以是“一对一” 2).可以是“多对一” 3).不能“一对多” 4). A
2013-12-04 21:06:26
20319
2
原创 集合的基本概念
我们看到的、听到的、闻到的、触摸到的、想到的各种各样的事物或一些抽象的符号,都可以看做对象,一般的,我们把一些可以确定的不同的对象看成一个整体,就说这个整体是由这些对象的全体构成的集合,构成集合的每个对象叫做这个集合的元素。
2013-12-04 13:52:40
3228
原创 汇编语言伪指令
伪指令是汇编指令的一种,它没有对应的机器指令,所以它不是机器指令的助记符,仅仅在编译阶段由编译器执行,编译成功后,伪指令就消失了,所以在程序执行时,伪指令是得不到处理器光顾的,实际上,程序执行时,伪指令已不存在。
2013-11-27 13:11:03
997
原创 编译器与平台相关性
每种处理器都可能会有自己的汇编语言编译器,而对于同一款处理器来说,针对不同的平台(比如 Windows 和 Linux) ,也会有不同版本的汇编语言编译器。 理论上,不管用的是什么操作系统,Windows 也好,DOS 也好,Linux 也好,只要是针对Intel 处理器开发的软件,底层的机器指令代码都是相同的,没有理由说某个软件只能在 Windows 操作系统上运行,而不能在
2013-11-27 10:17:06
1213
原创 程序的重定位
我们在指令中使用了绝对内存地址(物理地址),这样的程序是无法重定位的。为了让你写的程序在卖给别人之后,可以在内存中的任何地方正确执行,就只能在编写程序的时候使用相对地址或者逻辑地址了,而不能使用真实的物理地址。当程序加载时,这些相对地址还要根据程序实际被加载的位置重新计算。在任何时候,程序的重定位都是非常棘手的事情。当然,也有好几种解决的办法。在 8086处理器上,这个问题特别容易解决,因为该处理
2013-11-27 09:39:39
2196
原创 处理器怎样访问内存
为了访问内存,处理器需要给出一个地址。访问包括读和写,为此,处理器还要指明,本次访问是读访问还是写访问。如果是写访问,则还要给出待写入的数据。 尽管内存的最小组成单位是字节,但是,经过精心的设计和安排,它能够按字节、字、双字和四字进行访问。换句话说,仅通过单次访问就能处理 8 位、16 位、32 位或者 64 位的二进制数。注意,我说的是单次访问,而不是一个一个地取出每个字节,然后加
2013-11-27 09:18:07
1104
原创 处理器结构及其工作原理
处理器不是法师手中的仙器,它之所以能计算数学题,是因为其特殊的设计。处理器是一个“器件”,不太大,有的是长方形,有的是正方形,就像饼干。实际上,它是一块集成电路。 如图2-2所示,在处理器的底部或者四周,有大量的引脚,可以接受外面来的电信号,或者向外发出电信号。每个引脚都有自己的用处,在往电路板上安装的时候不能接错。所以,如图所示,处理器在生产的时候,都会故意缺一个角,这
2013-11-26 15:37:46
1647
原创 指令的操作码
对处理器来说,指令的操作码隐含了如何执行该指令的信息,比如它是做什么的,操作数的类型(是寄存器还是内存地址还是立即数),按字还是字节进行操作,以及怎么去做,同时还告诉处理器这条指令的的字节长度,以便定位下一条指令。例如: 8B 1E 00 3F这条指令。 这条指令的操作码为8B 1E,它隐含的意思是,这是一条传送指令,第一个操作数是寄存器RB,第二个操作数是内存地址003F,要
2013-11-20 08:22:33
6189
1
原创 指令集结构与微体系结构
我们可以这样区分处理器的指令集结构与微体系结构:指令集结构描述的是每条机器代码指令的效果;而微体系结构描述的是处理器实际上是如何实现的。
2013-11-19 11:23:59
1634
原创 I/O控制器与适配器的解释
每个I/O设备都通过一个控制器或适配器与I/O总线相连。控制器与适配器之间的区别主要在于它们的封装方式。 控制器是置于I/O设备本身的或者系统的主印制电路板(通常成为主板)上的芯片组,而适配器则是一块插在主板插槽上的卡。无论如何,它们的功能都是在I/O总线和I/O设备之间传递信息。《深入理解计算机系统》第二版第一章
2013-11-19 11:13:34
7669
转载 外频、前段总线频率及内存频率的关系
外频与前端总线频率的区别:前端总线的速度指的是数据传输的速度,外频是CPU与主板之间同步运行的速度。也就是说,100MHz外频特指数字脉冲信号在每秒钟震荡一千万次;而100MHz前端总线指的是每秒钟CPU可接受的数据传输量是100MHz×64bit=6400Mbit/s=800MByte/s。
2013-11-18 10:15:34
1008
原创 主板与芯片组的作用
主板负责通过主板上的线路(数据线、地址线、控制线)将所有的设备通通连接在一起。主板上的芯片组负责协调主板上所有的接口设备,使它们能有序的相互之间进行数据信息、地址信息、控制信息的传递,从而保证计算机正常的工作。
2013-11-18 09:13:21
1088
原创 如何理解编程语言的可移植性
编程语言的可移植性意味着,用一种编程语言在一个系统上编写的程序经过很少改动或者不经修改就可以在其他系统平台上运行。 要想了解可移植性必须要知道:1.什么是程序?2.什么是系统平台?什么是程序 首先,我们得知道程序的本质是什么?程序的本质就是一连串能被CPU识别并执行的有0、1代码组成的指令即目标代码(0、1组成的代码)。不同类型的CPU指令集是不同的,相同的一段0、1代码in
2013-11-13 09:02:09
6547
转载 ARM64移动处理器解惑
“64位”我们先来谈谈“64位”这个术语及其含义。大家对于这个术语一直比较困惑,很大一部分原因在于,它没有统一的、约定俗成的定义。然而,在大体上却达成了一些共识,尽管这些共识并未为大众所知。“×× 位”CPU通常是指两个部分的宽度:整数寄存器的宽度和指针的宽度。值得庆幸的是,在大多数现代CPU中,它们是一致的。“64位”通常是指CPU有64 位整数寄存器和64位指针。除了搞清楚“6
2013-11-12 13:29:45
999
原创 变量声明的本质
语句声明如 int num; 该声明把一个特殊的标识符和计算机内存中的一个特殊位置联系起来,同时确定了该位置存储的信息类型(也即数据类型)。
2013-11-12 08:32:04
754
原创 汇编语言的本质
很多初学汇编语言的人对汇编语言很迷茫,感觉很抽象。为了让大家更好的理解汇编语言,我这里列举了一些经典计算机书中对汇编语言的描述,希望能对大家有一些帮助。 汇编语言是特定的CPU设计所采用的一组内部指令的助记符,不同的CPU类型使用不同的汇编语言。——《C Primer Plus 中文版》第五版第一章1.2.2
2013-11-11 15:58:40
1771
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人