51单片机存储器补充理解

这篇博客探讨了微控制器内部存储器的结构,包括内部RAM、ROM和特殊功能区域。重点讲解了中断处理机制,如中断向量表的作用,以及CPU如何通过中断向量寻址执行中断处理程序。此外,还提到了内部RAM的工作寄存器组和位存储区,以及如何使用MOVC指令访问ROM中的位地址。
摘要由CSDN通过智能技术生成

一、有关于存储器

1、先来一张内部存储器的图

在这里插入图片描述

  • MOV指令 —— 对应于内部的 RAM
  • MOVX 指令 —— 对应于外部的 RAM
  • MOVC 指令 —— 对应于 内部的ROM + 外部的 ROM (c可以看作是code 所以对应 ROM)
2、特殊功能区域
  • 对于内部的 ROM 来说,开头的一段被 固化 了一些特殊的功能(中断向量):
    在这里插入图片描述

插入中断:
当我们对应的事件发生之后,比如计数器溢出,外部中断来临,串口缓存器填满,这些操作都会使对应的状态标志位置位

cpu 想要处理这些事件,有两种选择。
1、 轮询去查找标志位 : 适用于相对确定的场景,比如每隔半小时会有一个信号,那我们就每隔半小时去检查一下。(cpu主动去检测)
2、中断方式: 具有随机性,我们不知道这个中断信号什么时候来,当他来的时候,硬件会自动通知 CPU ,让cpu做出相应的处理。(cpu 被动被通知)

设置中断向量表:
意思就是当对应的中断来临之后,cpu 会到对应的中断向量地址处去执行代码
但是由于cpu 设计的厂商不确定我们的中断程序到底有多大,所以让我们在对应的中断向量表的地方放一条跳转指令

在汇编程序中的体现:
在这里插入图片描述
注: ORG 0003H : 指明下一条指令将要放到这个地址处。(明显是跳转到 另一个标号去执行对应的中断处理程序)

问:为什么中断向量处的地址要预留出 8 个字节的空间呢?
答:cpu 厂商在生产时候固定好的,虽然我们的跳转指令只是单字节指令

  • 对于内部的 RAM 来说也有
    在这里插入图片描述
    1、有关工作寄存器组
    在这里插入图片描述
    2、有关位存储区
    在这里插入图片描述

分析指令: MOV C, 20H;
C: 是 psw 的最高位(是一个 bit)
20H: 是对应的位地址区 24H的第0位。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

想文艺一点的程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值