【单片机期末】汇编试卷

一、选择题

@DPTR是16位的,所以寻址范围是64KB

R1是8位的,只能寻址256

访问内部ROM只能用MOVC指令

一个指令周期是时钟周期的1/12

12个时钟周期是一个机器周期

单指令周期是指一个机器周期

T = 1 / f

12MHz ~ 1us

  1. 13位计数
  2. 16位计数
  3. 8位自动重装载
  4. 双8位计数器

内部RAM可以位寻址的一共16个字节

工作寄存器一共32个字节

中断优先级的优先级一样时,有默认查询顺序

方式2→3位自动重装载

6MHz ~ 2us

200us / 2us → 100 → 64H

51单片机有5个中断

51单片机高电平复位,所以正常工作时应该是低电平

二、简答题

三、指出下列指令中源操作数的寻址方式及指令实现的功能

四、如果系统时钟为12MHz,计算下面的程序段的执行时间

双周期指令执行一次 2us

$表示R6要减到0,循环才会结束,继续往下执行

R6的初始值即为学号

五、编写实现下列功能的程序

ROM没有内部外部之分

外部ROM → A → 外部RAM

MOVC A @A+DPTR(或PC)因为此处的地址已知,所以最好使用DPTR(外部ROM → A)

MOVX和DPTR(A → 外部RAM)

因为@A+DPTR,A和DPTR的值共同决定2000H这个地址,所以A需要赋初值

RR是单字节位移

先将70HD额内容备份到A中,再将71H的内容放入70H中,然后将72H的内容放入71H中,以此类推,最终将A的数据存入75H中。

DIV AB //AB相除

用R0建址

六、阅读程序,写出程序执行的最终结果

ORL 或运算

RR循环移位

ANL 与运算

x是学号的十位 y是学号的个位

RS0 和 RS1 均置零,决定要用0组的工作寄存器 R0~R7

CJNE 不等的时候跳转 相等的时候不跳转继续按顺序执行

七、画出单片机AT89C51能够正常工作的最小系统图

八、根据程序功能,画出P1口每个引脚输出的波形,每小格代表500ms

第一个数是18H,第二个数是42H,倒着的

DJNZ不等于0循环

相关推荐
半夏知半秋1 分钟前
基于skynet框架业务中的gateway实现分析
服务器·开发语言·后端·学习·gateway
Pluchon8 小时前
硅基计划4.0 算法 字符串
java·数据结构·学习·算法
折翅鵬9 小时前
Android 程序员如何系统学习 MQTT
android·学习
~无忧花开~9 小时前
JavaScript学习笔记(十五):ES6模板字符串使用指南
开发语言·前端·javascript·vue.js·学习·es6·js
哈基鑫10 小时前
深度学习之图像分类笔记
笔记·深度学习·分类
润 下10 小时前
C语言——深入理解函数声明定义和调用访问
c语言·开发语言·经验分享·笔记·程序人生·其他
拾贰_C11 小时前
【pycharm---pytorch】pycharm配置以及pytorch学习
pytorch·学习·pycharm
向阳花开_miemie11 小时前
Android音频学习(二十一)——ALSA简介
学习·音视频
come1123412 小时前
ptyhon 基础语法学习(对比php)
android·学习
倔强菜鸟12 小时前
2025.8.10-学习C++(一)
开发语言·c++·学习