Italia
Fonte/ Codesnippets

Binärcode in einen Graycode und zurück wandeln

 

p.specht

Graycode hilft manchmal, Vereinfachungsmöglichkeiten bei elekronischen Steuerschaltungen zu erkennen, da sich von Schritt zu Schritt jeweils nur 1 bit ändert. Dummerweise gibt es aber gleich mehrere Graycodes, wobei manche z.B. auf Drehgebern eingesetzt werden (Man kann die Lichtschranken-Schaltkulisse dann in einem einzigen, zusammenhängenden Stück erzeugen).
WindowTitle "Bin2Gray und Gray2Bin"
' Binärcode nach Graycode und zurückwandeln
' (CL) Copyleft 2013-06 by P. Specht
' Q: https://de.wikipedia.org/wiki/Gray-Code
cls:font 2:Windowstyle 1048
var v$=mkstr$("0",32):declare gray&

whileloop 0,20000000

    locate 10,23:print right$(v$+bin$(&Loop),32)
    gray&=bin2gray(&Loop)
    locate 14,23:print right$(v$+bin$(gray&),32)
    locate 18,23:print right$(v$+bin$(gray2bin(gray&)),32)
    waitinput 400

endwhile

waitinput
end

proc Bin2Gray

    parameters bin&
    return xor(bin&,bin&\2)

endproc

proc Gray2Bin

    parameters Gray&
    declare i&,k&

    whileloop 31,0,-1:i&=&Loop

        k&=k& | XOR((((1 <<(&Loop+1)) & k&)>>1),(1<<&Loop) & Gray&)

    endwhile

    return k&'Binär

endproc

 
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
09.05.2021  
 



Zum Quelltext


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

553 Views

Untitledvor 0 min.
H.Brill26.09.2024
Ernst21.07.2021
Uwe ''Pascal'' Niemeier13.06.2021
R.Schneider28.05.2021
Di più...

Themeninformationen

Dieses Thema hat 1 subscriber:

p.specht (1x)


Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie