【跪求】单片机编程:利用查表发求1~9的平方值

如题所述

假设数据在R2中,求出平方后,仍然放在R2。
程序如下:

MOV A, R2
MOV DPTR, #TAB
MOVC A, @A+DPTR
MOV R2, A
RET
TAB: DB 0,1,4,9,16,25,36,49,61,81

END
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-04-20
查表法,这是要用汇编语言来编程吧?
汇编,可是不兼容的。
楼主用的什么单片机呀?追问

51的单片机

追答

楼上的程序,不对。

楼下的程序,是对的。

第2个回答  2019-01-08
ORG 0000H
LJMP COM
TAB:
DB 0,1,4,9,16
DB 25,36,49,64,81
MAIN:
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV 10H,A
RET
COM:
MOV SP,#60H
MOV A,21H
LCALL MAIN
LJMP $
END
第3个回答  2012-04-14
#include <REG51.H>
unsigned char ={1,4,9,16,25,36,49,61,81};
void main()
{unsigned char x,y;
x=3;//值
y=NUM[x];//平方值
while(1);
}
相似回答