跑馬燈效果 使用C語言用我這個位移的方法做出流水燈,如圖,圖里是用位移方法做的跑馬燈,求流水燈,不要用數(shù)組的方?
使用C語言用我這個位移的方法做出流水燈,如圖,圖里是用位移方法做的跑馬燈,求流水燈,不要用數(shù)組的方?不知道跑馬燈和流水燈有什么區(qū)別,看了你的描述好像跑馬燈是移動一個0其他都是1,那么流水燈就是其他都是
使用C語言用我這個位移的方法做出流水燈,如圖,圖里是用位移方法做的跑馬燈,求流水燈,不要用數(shù)組的方?
不知道跑馬燈和流水燈有什么區(qū)別,
看了你的描述好像跑馬燈是移動一個0其他都是1,那么流水燈就是其他都是0移動一個1?
不管什么數(shù)據(jù)實(shí)現(xiàn)循環(huán)移動位數(shù)的操作都是一樣的啊
就是你寫的那種
P2 = (P2>7)
這個操作就是循環(huán)左移一位
我分析一下這個操作你來看一下
P2有八位數(shù)據(jù)假如是 0110 1100
而保存某一位數(shù)據(jù)的做法就是把數(shù)據(jù)位和0求或(按位或)1|0 = 1 0|0 = 0
向左移動一位,數(shù)據(jù)的第一位就會被抹掉
110 1100 0,且在最后補(bǔ)上0
為了實(shí)現(xiàn)循環(huán)就得把移出去的一位補(bǔ)在最后那么直接找到這位與補(bǔ)上的0求或就行了
而且向右移動數(shù)據(jù)長度-1 還會在前面的位數(shù)上補(bǔ)上0就會保持前幾位不變
右移7(數(shù)據(jù)長度-1)位得到
0000 000 0(這個0是數(shù)據(jù)位)
那么兩個數(shù)字求或得到的新數(shù)字就是循環(huán)移位得到的結(jié)果了
不管你是什么燈吧,這個核心的移位算法是不變的
話說研究流水燈這個有什么用呢???