MCS-51单片机复习重点:运算与程序控制
需积分: 9 89 浏览量
更新于2024-07-21
收藏 220KB PPT 举报
"南师大单片机期中复习资料,包含单片机相关知识点和典型题目解析"
在单片机的学习中,8051系列是常见的微控制器,其指令系统是理解与编程的基础。根据提供的部分内容,我们可以深入探讨以下几个知识点:
1. **运算指令及其结果**:
- `DIVAB` 指令用于执行A和B的除法运算,A作为被除数,B作为除数。执行后,A中存放商,B中存放余数,CY(进位标志)在除数非零时OV(溢出标志)为0。具体数值未给出,需根据实际运算填写。
- `MULAB` 指令执行乘法操作,(A) * (B) 结果存放在A和B中,(A)存放低位,(B)存放高位,CY表示是否有进位,OV表示是否有溢出。给定值 (A)=64H, (B)=32H,执行后 (A)=13H, (B)=1H, CY=1, OV=0。
2. **算术逻辑运算与标志位**:
- PSW(程序状态字)寄存器保存了运算结果的状态,如进位标志CY、奇偶标志P、辅助进位标志AC等。给定的指令序列涉及加法运算和寄存器间的转移,计算后应更新相应的寄存器值。具体数值未给出,需要根据实际运算填写。
3. **单片机指令的应用**:
- 清0操作,可以使用 `CLRA` 或 `ANLA #00H` 指令来实现。
- A加倍,可使用 `RLA` 或 `ADDA, ACC` 指令。
- 按位求反,使用 `CPLA` 指令。
- 内RAM20H单元的高4位不变,低4位清0,可以使用 `ANL 20H, #0F0H` 指令。
4. **MCS-51的时序**:
- MCS-51单片机的主频为12MHz时,一个机器周期是1us(1微秒),即12ns。最长指令通常为两个机器周期,最短指令可能只需要一个机器周期。
5. **堆栈操作与子程序调用**:
- 在子程序调用过程中,SP(堆栈指针)会递减以存储返回地址,即(SP)=50H - 1 = 4FH,在调用子程序 `ASUB` 后,(SP)=4EH。返回地址会被压入堆栈,因此(50H)=0368H + 2 = 036AH。执行 `ACALL ASUB` 后,PC(程序计数器)的值会更新为子程序地址。
6. **循环与条件跳转**:
- 提供的代码片段是一个简单的循环结构,执行完循环后根据CY(进位标志)的状态决定是否执行 `MOV @R0, #01H` 指令。如果循环没有发生进位(即无借位),则跳过该指令,否则执行后将R0指向的内存位置赋值为1。
以上内容涵盖了8051单片机的运算指令、标志位处理、堆栈操作、子程序调用、循环控制等多个核心知识点,是进行单片机编程和调试的基础。通过理解和掌握这些知识点,可以更好地进行单片机设计和应用。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2013-04-07 上传
qq_18985271
- 粉丝: 0
- 资源: 3
最新资源
- diagwiz:ASCII图作为代码
- userscripts:一些改善UI的用户脚本
- bsu:FAMCS BSU(专业计算机安全)上用于大学实验室的资料库
- krip:彻底的简单加密,在后台使用WebCrypto
- 费用追踪器应用
- 111.zip机器学习神经网络数据预处理
- 财务管理系统
- NNet:用于手写识别的神经网络
- 加州阳光咖啡书吧创业计划书.zip
- Pricy - Amazon Price Watch-crx插件
- AMONG_py-0.0.3-py3-none-any.whl.zip
- MIUI12.5-其他:MIUITR Beta其他语言翻译
- SnowCat:薛定谔的猫
- AMD-1.2.1-py3-none-any.whl.zip
- Slider popover(iPhone源代码)
- 实现一个3D转盘菜单效果