佐藤美纪mdyd413 mp4:什么是缓冲寄存器

来源:百度文库 编辑:神马品牌网 时间:2024/04/29 11:50:45
缓冲寄存器与普通的寄存器有什么区别?缓冲具体体现在哪里?

普通寄存器是寄存平时处理的数据用的,可以加快计算机的处理问题的速度;而缓冲寄存器是用于两个速度不匹配的单位之间的,作用是对高速度设备进行数据缓冲,防止低速度设备来不及处理而丢失数据。比如工厂每天生产1000件商品,而商店每天只能卖掉700件,那么就要一个仓库来保存那300件,那个仓库就是起到缓冲作用。

缓冲最常见的地方就是网络了,你听音乐,特别是看在线视频,就需要缓冲。

数据缓冲寄存器 这是一个可以直接寻址的串行口专用寄存器。有朋友这样问起过“为何在串行口收发中,都只是使用到同一个寄存器SBUF?而不是收发各用一个寄存器。”实际上SBUF包含了两个独立的寄存器,一个是发送寄存,另一个是接收寄存器,但它们都共同使用同一个寻址地址-99H。CPU在读SBUF时会指到接收寄存器,在写时会指到发送寄存器,而且接收寄存器是双缓冲寄存器,这样可以避免接收中断没有及时的被响应,数据没有被取走,下一帧数据已到来,而造成的数据重叠问题。发送器则不需要用到双缓冲,一般情况下我们在写发送程序时也不必用到发送中断去外理发送数据。操作SBUF寄存器的方法则很简单,只要把这个99H地址用关键字sfr定义为一个变量就可以对其进行读写操作了,如sfr SBUF = 0x99;当然你也可以用其它的名称。通常在标准的reg51.h或at89x51.h等头文件中已对其做了定义,只要用#include引用就可以了。

寄存器可以是永久的,如,硬盘,缓冲寄存器如内存是暂时保存数据用的。