Byte tükrözés
-
Hooligan01
Byte tükrözés
Hello!
A kérdés a következő:
Adott egy byte amit tükrözni kéne.
pl.: 00100011 -> 11000100
Van erre valami megoldás a bitenkénti macera helyett?
A kérdés a következő:
Adott egy byte amit tükrözni kéne.
pl.: 00100011 -> 11000100
Van erre valami megoldás a bitenkénti macera helyett?
Necces....
Csak nem sikerult portot fordítva bekötni?
Kód: Egész kijelölése
dim t as byte'bemeno
dim a as byte 'eredmeny
a.0=t.7
a.1=t.6
a.2=t.5
a.3=t.4
a.4=t.3
a.5=t.2
a.6=t.1
a.7=t.0
t=a'hogy helycsre legyen...
Csak nem sikerult portot fordítva bekötni?
-
Hooligan01
Írtam gyakorlás képen Byte tükröző rutint Asm-ban.
Lehet használni. 
Lehet használni.
Kód: Egész kijelölése
'Byte Tükrözés Asm-ben
'Írta Kapu48
$sim
$regfile = "m16def.dat" ' we use the M16
'$regfile = "m644def.dat" ' we use the M644
$crystal = 14745600
$baud = 1200
$hwstack = 64
$swstack = 64
$framesize = 64
Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.3 , Rs = Portc.2
Config Lcd = 20 * 4
Dim Fordito As Byte
Fordito = 204 'Bin 11001100
Initlcd
Cls
Lcd Bin(fordito) ; "="
$asm
Push R16
Push R17
Push R18
Ldi R16,8
Lds R17,{Fordito}
Doo:
Rol R17
Ror R18
Dec R16
Brne Doo
Sts {Fordito},R18
Pop R18
Pop R17
Pop R16
$end Asm
Lcd Bin(fordito) 'Bin 00110011, Dec 51
End 'end program
Hali.
Nem a legelegánsabb megoldás, de működik:)
KN
Nem a legelegánsabb megoldás, de működik:)
Kód: Egész kijelölése
Dim A As Byte
Dim B As Byte
Dim I As Byte
Dim K As Byte
A = &B00100011
For I = 0 To 7
K = 7 - I
B.k = A.i
Next
Print Bin(b)
End