8051单片机的寄存器是怎样的

发表时间: 2024-02-06 03:56:46 作者: 试剂盒

  中,有一种数据类型是8位,从MSB(最高有用位)D7到LSB(最低有用位)D0。关于8 位数据类型,任何大于 8 位的数据类型都有必要在处理之前分红 8 位块。

  8051中运用最广泛的寄存器是 A(累加器)、B、R0-R7、DPTR(数据指针)和 PC(程序计数器)。全部这些寄存器都是 8 位的,除了 DPTR和 PC。

  用于全部算术和逻辑运算。假如累加器不存在,则每次核算(加法、乘法、移位等)的每个成果都将存储到主存储器中。拜访主存储器比拜访比如累加器之类的寄存器慢,由于用于大主存储器的技能比用于寄存器的技能慢(但更廉价)。

  “R”寄存器是一组八个寄存器,即 R0、R1 到 R7。这些寄存器在许多操作中用作辅佐或暂时存储寄存器。考虑 10 和 20 之和的示例。将变量 10

  存储在累加器中,并将另一个变量 20 存储在寄存器 R4 中。要处理加法操作,请履行以下指令:

  30。因而“R”寄存器是很重要的辅佐或协助寄存器。假如不是这些“R”寄存器,独自的累加器不会很有用。“R”寄存器用于暂时存储值。

  让咱们再举一个比如。咱们将 R1 和 R2 的值相加,然后从成果中减去 R3 和 R4 的值。

  如您所见,咱们运用 R5 来暂时保存 R3 和 R4 的总和。当然,这不是核算 (R1 + R2) – (R3 + R4)

  “B”寄存器与累加器十分类似,由于它能够保存一个 8 位(1 字节)的值。“B”寄存器仅由两条 8051指令运用:MUL AB和DIV

  AB。为了快速轻松地将 A 乘以或除以另一个数字,您能够将另一个数字存储在“B”中并运用这两个指令。除了运用 MUL 和 DIV

  指令外,“B”寄存器一般用作另一个暂时存储寄存器,很像第九个 R 寄存器。

  数据指针 (DPTR) 是 8051仅有的用户可拜访的 16 位(2 字节)寄存器。累加器、R0–R7 寄存器和 B 寄存器是 1

  字节值寄存器。DPTR 用于指向数据。8051运用它来运用 DPTR 指示的地址拜访外部存储器。DPTR 是仅有可用的 16 位寄存器,一般用于存储 2

  程序计数器 (PC) 是一个 2 字节的地址,它告知 8051能够在内存中找到下一条要履行的指令。PC 在 8051初始化时从 0000h

  开端,每次履行指令后递加。PC 并不总是加 1。有些指令在大多数情况下要 2 或 3 个字节;在这种情况下,PC 将添加 2 或 3。

  分支、跳转和中止操作将下一个次序方位以外的地址加载到程序计数器中。激活上电复位将导致寄存器中的全部值丢掉。这在某种程度上预示着复位时 PC 的值为 0,迫使

  CPU 从ROM方位 0000 获取第一个操作码。这在某种程度上预示着咱们有必要将上行代码的第一个字节放在 ROM 方位 0000 中,由于这是 CPU

  仓库指针与除 DPTR 和 PC 之外的全部寄存器相同,能够保存 8 位(1

  字节)值。仓库指针告知从仓库中删去下一个值的方位。当一个值被压入仓库时,SP 的值会添加,然后该值被存储在成果内存方位。当一个值从仓库中弹出时,该值从SP

  这个操作次序很重要。8051初始化时,SP 会被初始化为 07h。假如一起将一个值压入仓库,则该值将存储在内部RAM地址 08h 中,由于

  8051会先将 SP 的值(从 07h 到 08h)递加,然后将压入的值存储在该内存中地址 (08h)。8051直接经过 6 条指令修正

  编程与位运算 /

  在电学里边,归于很简单的一种器材,表面看,便是一个芯片,长着许多的脚。内部,便是一堆

  只要凹凸电平两个参数,STM32的每个GPIO口都有八种输出方法,经过

  功用一览表 /

  材料阐明 /

  其实就等于一个变量,只不过这个变量在固定的地址,有一个特别的称号(当然也不强制)。初学者对

  (四) /

  看作是CPU内部的作业区域,类似于人的大脑,用于暂时存储和处理当时的使命和信息。

  全国大学生核算机体系才能大赛操作体系规划赛-LoongArch 赛道广东龙芯2K1000LA 渠道材料共享

  我用全志V851s做了一个魔法棒,运用Keras练习手势辨认模型操控全部电子设备