发布时间:2012-11-19 阅读量:2152 来源: 我爱方案网 作者:
寄存器的作用
寄存器是CPU内部的元件,在生活中是非常可见的。寄存器拥有非常高的读写速度,所以在寄存器之间的数据传送非常快。寄存器的用途:1.可将寄存器内的数据执行算术及逻辑运算。2.存于寄存器内的地址可用来指向内存的某个位置,即寻址。3.可以用来读写数据到电脑的周边设备。
.jpg)
寄存器用途
1.可将寄存器内的数据执行算术及逻辑运算;
2.存于寄存器内的地址可用来指向内存的某个位置,即寻址;
3.可以用来读写数据到电脑的周边设备。
AX 累加器,得名原因是最初常使用ADD AX,n这样的指令
CX 计数器,得名原因是最常使用CX的值作为重复操作的次数
BX 常用作地址寄存器,如MOV AX,[BX],把BX所指地址中的数取到AX中去
DX 通用寄存器
都是16位寄存器
E前缀是他们的32位版本
他们的地位都是平等的,也不仅限于规定的作用,很多时候可以通用,爱用哪个用哪个。
今天看了几个关于cpu寄存器一些帖子,感觉上他们所说的好象没有说明cpu寄存器的作用。我从我现在所了解的知识,与大家讲一讲,共同学习一下吧。先讲CPU的一些分类。
第一,从cpu的种类来分寄存器来分的话。有Motorola 68x00、Intel IA-32、SUN Sparc、Vax和IBM-370等,不同种类的cpu,都有与其对应的寄存方法与方式。对我们来说,一般都x86的,即我常说的英特尔公司与AMD公司生产的cpu,这可能占世界上个人PC的90%多吧。
第二,从这一条起,我们所讲的寄存器都是以x86为基础的,那么这种CPU内,寄存器可分为以下几种。其一,是EAX、EBX、ECX、EDX等通用寄存器。其二呢,是CS、SS、ES等段寄存器。其三呢,是EIP,也称为指令指针。其四呢,EFLAGS寄存器,俗称为标志寄存器。其五,浮点单元,这里面之所以只浮点单元,是因为在它里面还有一些小的寄存分类,主要是数学上的浮点上的计算。其六呢,MMX指令使用的8个64位寄存器。其七呢,单指令、多数据操作(SIMD,single-instruction,multiple-data)使用的8个128位XMM寄存器。
以上是CPU的一些分类的常用知识,其中,对我们大多数人来讲,需要了解与知道的是x86这类的,也就是我们所说的IA-32系列CPU。也许有人会说AMD的CPU,这不用担心,它是兼容INTEL的,这不用我们担心的事情,那么我们主要了解的是IA-32这一类的结构,这些方面需要我们花一些时间去了解。如果我们只是需要一般的编程的话,我们了解上面这些就可以了。因为在C/C++、Java、Perl等这些编程的话,寄存器的使用一般不需要。但是如果进行汇编语言编程的话,那我们还需要对更加深入的了解。好了,下面我开始讲解一些与汇编语言编程有关寄存器的作用与结构粗陋地讲解一些,不过先要说明一些,我对这些不是很精通,我也只是一般的了解,如果大家深入的学习的话,我介绍二本书给大家。不过很难买到,只要大家用心去买,还是可以买到的,第一本是《Intel汇编语言程序设计》,我买的是第四版。第二本是Intel微系统结构与汇编语言,具体的名字我记不清,是一本厚的书。它是第一本的基础,但是它显得有点旧,但是它286开始介绍的。很值得去看看。如果说仅仅用一个帖子把寄存器的作用与使用说明,我则只能说我不行,但是从它的一般的使用与了解的话,我想也只是几句话而已。
从结构上看CPU的寄存器,它实际上是CPU的一部分。这包括后来,也是现在所流行的64位双核CPU,都是如此。从内存的使用角度上来讲的话,CPU的寄存器,它是内存的一部分,但是从快速的角度上来,寄存器它似乎不存在着地址的问题,因为是它是CPU的操作的最近的一部分,也是CPU执行时第一个要访问的第一个地方,但是它作用是存储用的。只是存储的内容不一定是指令,还有可能是地址,或者说是一些标志。这都是有可能的。
说上二句所谓的题外话,CPU的寄存器,从最基本上来讲,它只是一个个容器而已。那么依据它的分类,可分为通用寄存器,从通用上来讲,它所存储的东西,只要它的容积所容许的话,什么都是可以存储的,而段寄存器呢,它所存储的只能是地址,它的作用是从寻址上可以体现出来,而标志寄存器呢,那么所存储的是与CPU的每一个执行的指令有关。是关系到CPU每一个指令的执行相关内容与特殊的关联,即CPU所执行的指令是否违规,它的指令是否有进位,它的指令是否有溢出,都是在标志寄存器中能表现与表达出来。所有这些细则,只有通过学习后才能知道的。
好了,我只能说这些了,如果有说错的地方,还高人指出,加以指正与批评,谢谢。
专用寄存器的作用
16位CPU内部有一个16位的标志寄存器,它包含9个标志位。这些标志位主要用来反映处理器的状态和运算结果的某些特征。各标志位在标志寄存器内的分布如图2.2所示。
1514131211109876543210
OFDFIFTFSFZF AF PF CF
31…17161514131211109876543210
……VMRF NTIOPLOFDFIFTFSFZF AFPFCF
.jpg)
图2.2 16位/32位标志寄存器的示意图
上面9个标志位可分为二组:运算结果标志位和状态控制标志位。前者受算术运算和逻辑运算结果的影响,后者受一些控制指令执行的影响。
更详细的内容标志位的说明。
有些指令的执行会改变标志位,不同的指令会影响不同的标志位,有些指令的执行不改变任何标志位,有些指令的执行会受标志位的影响,也有指令的执行不受其影响。
程序员要想熟练运用这些标志位,就必须掌握每个标志位的含义、每条指令的执行条件和执行结果对标志位的作用。
注意:虽然知道每个标志位在标志寄存器内的具体位置是有好处的,但通常情况下,没有这个必要。在使用第
无源晶振与有源晶振是电子系统中两种根本性的时钟元件,其核心区别在于是否内置振荡电路。晶振结构上的本质差异,直接决定了两者在应用场景、设计复杂度和成本上的不同。
RTC(实时时钟)电路广泛采用音叉型32.768kHz晶振作为时基源,但其频率稳定性对温度变化极为敏感。温度偏离常温基准(通常为25℃)时,频率会产生显著漂移,且偏离越远漂移越大。
有源晶振作为晶振的核心类别,凭借其内部集成振荡电路的独特设计,无需依赖外部电路即可独立工作,在电子设备中扮演着关键角色。本文将系统解析有源晶振的核心参数、电路设计及引脚接法,重点阐述其频率稳定度、老化率等关键指标,并结合实际电路图与引脚定义,帮助大家全面掌握有源晶振的应用要点,避免因接线错误导致器件失效。
晶振老化是影响其长期频率稳定性的核心因素,主要表现为输出频率随时间的缓慢漂移。无论是晶体谐振器还是晶体振荡器,在生产过程中均需经过针对性的防老化处理,但二者的工艺路径与耗时存在显著差异。
在现代汽车行业中,HUD平视显示系统正日益成为驾驶员的得力助手,为驾驶员提供实时导航、车辆信息和警示等功能,使驾驶更加安全和便捷。在HUD平视显示系统中,高精度的晶振是确保系统稳定运行的关键要素。YSX321SL是一款优质的3225无源晶振,拥有多项卓越特性,使其成为HUD平视显示系统的首选。