作者joy830 (joy)
看板ASM
標題Re: [問題] 請問一下這五個迴圈如何化簡?
時間Tue Mar 30 12:48:10 2010
※ 引述《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: 140.124.43.228
※ 編輯: joy830 來自: 140.124.43.228 (03/30 12:48)
1F:推 gn00683155:下次教他方向就好了吧~直接給答案有點抹殺思考的FU~ 03/30 23:51
2F:推 WolfLord:不,他這個程式雖然可RUN但拿去交會被嚴謹的老師退回 03/31 12:11
3F:→ WolfLord:所以傻傻拿交被退回就是自己不動腦被抓包,而老師收了 03/31 12:12
4F:→ WolfLord:就可以證明老師馬馬虎虎老好人不開當舖 :P 03/31 12:13
5F:推 gn00683155:認同W大的說法..但現在老師也難為ˊ ˋ 03/31 12:42
6F:→ gn00683155:如果作出來程式不好看請他重作..事後老師就會被留下 03/31 12:43
7F:→ gn00683155:不好的印象ˊ ˋ ...認為老師不會教ˊ ˋ 03/31 12:43
8F:推 ksmrt0123:給方向是沒錯 但G大只說"call table"比較像燈迷 neh 03/31 13:25
9F:→ ksmrt0123:什麼是 call table? array of function pointers? 03/31 13:25
10F:推 gn00683155:抱歉 asm教習慣了 所以直接用這個例子 03/31 15:07
11F:推 gn00683155:加上...這板不是ASM嗎?...GOOGLE搜尋一下多學一點也不 03/31 15:11
12F:→ gn00683155:錯 03/31 15:12
13F:推 ksmrt0123:教ASM的老師耶~~~ 有高人上板是板友的福氣的啦~~~ 03/31 20:23
14F:推 han999:我這個不是作業文而是自己買了一組旗標的PSoC來嘗試。 03/31 23:50
15F:→ han999:我不是念工科的,自己想說動手玩玩! 03/31 23:51
16F:→ utility:這程式應該沒有想清楚就寫了吧?陣列0~6,可是取array.0~7? 04/01 12:37
17F:推 wuonline:所以結果就會像2樓W大講的那樣XD 04/01 13:04
18F:→ markov:完蛋了 我大概會退他件 只給60分 也不讓他補作 04/05 23:07
19F:推 WolfLord:我給分一向只有90跟0,樓上客氣了 (笑) 04/05 23:32
20F:→ WolfLord:忘了說,不是四捨五入而是90以下一律捨去 :P 04/05 23:34