Re: [問題] 8051 跑馬燈問題
看板C_and_CPP (C/C++)作者uranusjr (←這人是超級笨蛋)時間13年前 (2012/10/03 22:08)推噓1(1推 0噓 1→)留言2則, 2人參與討論串2/2 (看更多)
※ 引述《jayemshow (S.Kazumi)》之銘言:
→
10/03 19:44,
10/03 19:44
→
10/03 19:55,
10/03 19:55
→
10/03 19:56,
10/03 19:56
不知道你有沒有寫過組語的版本, 不過我那時候學的時候老師有特別提
C 的左移和右移運算子是在空出來的位元補零
這是和 LL 與 RL 相當, 而不是像 LLC 跟 RLC 的作用
(我組語很久沒碰了可能有寫錯)
也就是說, 假設整數是八位元, 左移狀況會像這樣
a = 0x01; // ○○○○○○○●
a <<= 1; // ○○○○○○●○
a <<= 1; // ○○○○○●○○
a <<= 1; // ○○○○●○○○
a <<= 1; // ○○○●○○○○
a <<= 1; // ○○●○○○○○
a <<= 1; // ○●○○○○○○
a <<= 1; // ●○○○○○○○
a <<= 1; // ○○○○○○○○ 移到範圍外了
a <<= 1; // ○○○○○○○○ 所以這邊之後都不會有東西
所以你的燈跑一輪之後就會掛掉
必須要在最後一次左/右移後把值設回來
--
「我最想要的同伴嘛,首先是要笑口常開,其次是我們能永遠不會發生誤會。
如果這些都能辦到的話,嗯,如果他是世界上第一流的橋手,也還不錯。」
-- 班尼多‧加羅素,前義大利藍隊成員
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.81.146
※ 編輯: uranusjr 來自: 114.32.81.146 (10/03 22:09)
→
10/03 22:26, , 1F
10/03 22:26, 1F
推
10/04 11:55, , 2F
10/04 11:55, 2F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章