keil如何用汇编编写如下一个用查表法的程序?

编写采用查表法求1~20的平方数的程序。已知x属于[1,20]存在累加器A中,查得平方数高位存入R6、低位存入R7。希望各位大神能够把asm文件上传,最好能有调试的截图。

;
RL A
MOV B, A
MOV DPTR, #TAB
MOVC A, @A + DPTR
MOV R7, A
MOV A, B
INC A
MOVC A, @A + DPTR
MOV R6, A
RET
TAB:
DW 0, 1, 4, 9, 16, 25, 36, 49, ..., 400 ; 平方数据表,楼主自己补全吧。

END
温馨提示:内容为网友见解,仅供参考
无其他回答

按键扫描的keil.c51程序
void ReadKey(void); \/\/扫描键盘 获取键值 void delay();\/\/延时子函数,5个空指令 void display(unsigned char *lp,unsigned char lc);\/\/数字的显示函数;lp为指向数组的地址,lc为显示的个数 \/\/这个函数在第二节用过不用再说了吧!void main(void) \/\/入口函数 { while(1){ ReadKey(...

单片机或者 FPGA能不能通过设计程序 输出正弦波 锯齿波以及其他...
用DDS方法去产生你需要的任意波形,比如AD9850,单片机控制其产生正弦波或者锯齿波,频率可以任意调整。一个DDS芯片AD9850,一片单片机AT89S52,全搞定,比你用FPGA简单多了吧?

在keil软件里边怎么编写对数函数
1.建议建立数据表,查表方式。2.C语言编程博大精深,初学者直接用库函数即可,但占用ROM资源大,运行速度慢;3.对于高手或者要求高的应用,需要结合数值计算方法以及单片机的硬件指令编程,提高运行效率。比如简单的正弦波发生器查表显然是最快的方法,执行速度高于math函数100~10000倍;再比如一个整数(XX...

怎么在51单片机中读取文件 如何在Keil C51使用fopen函数 也就是如何在...
首先,Keil中根本没有fopen函数,你可以打开keil的所有头文件看看。其次,用单片机来读取文件是需要文件系统(比如FAT)来支持的,你不能“想当然”的认为计算机上的标准C函数中有文件打开函数,所以单片机中也有。更何况是51单片机!像51单片机一般直接使用二进制存储,这样最简单快捷,文件存储反而成本高,速...

如何编写51单片机音乐程序
其记数值的求法如:T=65536-N=65536-Fi\/2\/Fr。例:设K=65536,F=1000000=Fi=1 MHZ。求低音DO(26HZ),中音DO(523HZ),高音DO(1046HZ)的记数值。每个音符使用1个音节,字节的高四位代表音符的高低,低四位代表音符的节拍。如果1拍为0.4秒,1\/4拍为0.1秒,假设1\/4拍为 DELAY,则1拍为4...

学校的课程设计,用proteus单片机和keil设计一个LED数码管显示的秒表...
程序中的按键处理,方法不当。先改成如下的程序,先调出能显示,然后你自己再增加按键功能。include <reg52.h> define uchar unsigned char define uint unsigned int sbit START = P1 ^0;sbit STOP = P1 ^1;sbit RESET = P1 ^2;sbit dp = P0 ^7;sbit w1 = P2 ^6;sbit w2 = P2 ^7;...

汇编程序如何生成HEX文件?
首先要看是什么CPU的HEX文件,查查有没有反汇编一类的应用工具,如果没有,就看看以下的方法: 1,确定HEX是什么格式的,是Intel的,或者别的; 2,用VC编个程序,将code从HEX文件中提取出来,并输出成文本文件,code全部以16进制字节形式存入这个文本文件; 3,找到的CPU指令集手册,按照指令集手册,一个字节一个字节的对输...

数码管动态扫描中的delay 函数有什么作用?
如果要改变显示的数字,程序改动起来很麻烦。 所以要用51单片机中常用的一种方法:查表法。例如P0口输出段码时,我们可以把要显示的段码放在一个表格中,然后每次从这个表格里面取数,送到P0口即可。P2口输出位码时,可以把要用的位码放在另一个表格里,每次从此表中取数,送入P2口。这样,如果要改变显示的数字,只...

单片机KEIL编程和pruteus 连调 用8个LED实现 下面的灯亮灯灭
DB 11111111B DB 11111110B DB 11111101B DB 11111100B DB 11111011B 根据你的5行,和上表中的5行对应;其他的照此定义!0代表亮,

在keil_C51设计中几种精确延时的方法
熟悉硬件的开发人员,也可以利用示波器来测定延时程序执行时间。方法如下:编写一个实现延时的函数,在该函数的开始置某个I\/O口线如P1.0为高电平,在函数的最后清P1.0为低电平。在主程序中循环调用该延时函数,通过示波器测量P1.0引脚上的高电平时间即可确定延时函数的执行时间。使用反汇编工具计算...

相似回答