作者clanguage (C語言)
看板ASM
標題Re: [問題] 請問一下這五個迴圈如何化簡?
時間Sun Apr 4 11:15:39 2010
call table 的話, 給一個 table 的位址, 然後加上索引就可獲得該資料
MOV DPTR,#TABLE
MOV A,R1
MOVC A,@A+DPTR
MOV P2,A
...
TABLE: ;123456789 這邊放你要查表的東西
DB 11000000B ;0
DB 11111001B ;1
DB 10100100B ;2
DB 10110000B ;3
DB 10011001B ;4
DB 10010010B ;5
DB 10000010B ;6
DB 11111000B ;7
DB 10000000B ;8
DB 10011000B ;9
※ 引述《joy830 (joy)》之銘言:
: ※ 引述《han999 (999就是久久久!)》之銘言:
: : 我寫一個土法煉鋼的跑馬燈程式如下:
: : //○不亮
: : //●亮
: : /* 16進制 8421 8421
: : 0x81=左一右一 ●○○○ ○○○●
: : 0x42=左二右二 ○●○○ ○○●○
: : 0x24=左三右三 ○○●○ ○●○○
: : 0x18=左四右四 ○○○● ●○○○
: : 0x24=左三右三 ○○●○ ○●○○
: : 0x42=左二右二 ○●○○ ○○●○
: : 0x81=左一右一 ●○○○ ○○○●
: : */
: int A[7]={0x81,0x42,.........0x81};
: while(1)
: {
: for(int i=0;i<8;i++)
: for(int j=0;j<8;j++)
: {
: P1OUT = A[i];
: if(i==3) k>>1;
: else i <<= 1;
: delay();
: }
: }
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.229.235.8
推 ksmrt0123:很清楚 但這個東西有人叫mapping table, look-up table 04/04 13:53
→ ksmrt0123:多數人直接叫table, 但從未聽過叫call table的 04/04 13:54
→ ruemann:還好啦,因為有些mcu真的是用call來取得table 04/04 17:06
推 WolfLord:比如說....PIG。喔,不,PIC12/16/18 :P 04/04 17:15
→ ksmrt0123:原來是 pic 的 retlw... hmm... 04/04 17:53