作者mepass (mepass)
看板ASM
标题[问题] 课本上的例题对吗?
时间Mon Jun 25 00:25:07 2012
之前有个学弟问我他们课本上的8051例题
我看了之後感觉有点疑虑 想上来问看看
题目是:
write a program to get the x value from P1 and send x^2 to P2,continuously.
程式码如下
ORG 00H
MOV DPTR,#300H
MOV A,#0FFH
MOV P1,A
BACK: MOV A,P1
MOVC A,@A+DPTR ??????
MOV P2,A
SJMP BACK
ORG 300H
DB 0,1,4,9,16,25,36,49,64,81
END
==================================
我主要对
MOVC A,@A+DPTR
这行觉得很奇怪
A值明明就是FF
这样应该会从3FF开始取值吧
如果想要取得300H下面的值
应该要先让A变成0才对吧
请问这是书本漏写了吗
还是我的想法有问题??
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.38.231.122
1F:推 WolfLord:他不是又从P1抓了P1的值回来吗? 这个范例写得不是很好 06/25 00:37
2F:→ WolfLord:但是应该没错。 06/25 00:38
所以说
MOV A,#0FFH
MOV P1,A
这两行是让P1变成input
然後
MOV A,P1
这段才是真正取P1的值
是这麽说的吗?
※ 编辑: mepass 来自: 114.38.231.122 (06/25 00:56)
3F:→ WolfLord:you got it 06/25 01:17