Re: 查表問題(ADDWF PCL)......
|
||||
---|---|---|---|---|
初級會員
|
因為機器的關係,無法使用Watch window看W的值,但是可以確定的是,如果TEMP2 =44時,table return D'4'(已測試過了,非常確定return的值),那...."RRF INDEX,W"真的將值存在W嗎?若值是存在INDEX,那程式就合理了,若存在W,就真的不解了.....
*********************(若寫錯,請不要見怪)* SUBWF TEMP2,W SKPC ; (check flag"C") GOTO SOMEWHERE ; (C=1,有溢位) MOVWF INDEX ; (C=0,無溢位) *************************************
發表於: 2005/6/7 9:59
|
|||
|
Re: 查表問題(ADDWF PCL)......
|
||||
---|---|---|---|---|
版主
|
你確定 RRF INDEX,W 後 W reg. 的值不等於2 嗎? 用 Watch window 看一下吧! SKPC 不知為何種 MARCO?
發表於: 2005/6/6 18:00
|
|||
|
Re: 查表問題(ADDWF PCL)......
|
||||
---|---|---|---|---|
初級會員
|
謝謝版主大大......
但若TEMP2 =44, TEMP2-TEMP1=4,4/2=2,按照Table應回應 D'2',可是程式卻回應 D'4',不解?
發表於: 2005/6/6 17:49
|
|||
|
Re: 查表問題(ADDWF PCL)......
|
||||
---|---|---|---|---|
版主
|
RRF INDEX,W 應該是將查表的索引值除二後在查表。
發表於: 2005/6/6 17:38
|
|||
|
查表問題(ADDWF PCL)......
|
||||
---|---|---|---|---|
初級會員
|
小弟因工作關係使用PIC16C73,有一段查表程式不解,希望各位高手能幫忙解答....程式如下:
************************************ TABLE ADDWF PCL RETLW D'0' RETLW D'1' RETLW D'2' . . . RETLW D'10' ************************************ ************************************ MOVLW TEMP1 ; w=40 SUBWF TEMP2,W ; TEMP2 = 40~50 SKPC GOTO SOMEWHERE ; goto somewhere MOVWF INDEX CLRC RRF INDEX,W CALL TABLE . . . ************************************ 經過測試,其查表的功能都很正常.... 不懂的是 "RRF INDEX,W",為什麼要加這一行? 另外還有小問題,"SUBWF TEMP2,W",and "RRF INDEX,W",其W值不等於0,亦不等於1(W=40),卻存在W裡,為什麼? 請各位高手幫忙教一教剛入門的小弟,感激不盡!!!!
發表於: 2005/6/6 17:34
|
|||
|