Negative Zahlen bei Datenübertragung mit Byte
hi,
ich übertrage daten mit den protokoll SNAP mit folgenden aufbau:
preamble, sync, hdb2, hdb1, dab, sab, db16, db15, ..., db01, crc2, crc1
das funktioniert ja prima.
nun hab ich aber das problem mit negativen zahlen.
ich muß in bascom integer definieren, jedoch hat integer
mehr als 8 bit (1 byte)
wie kann ich diese integer-zahl in ein vorzeichenbehaftetes byte umwandeln bzw. umgekehrt.
der komplizierte weg ist
if integer-zahl <0 then
set minus
byte-zahl.0=not integer-zahl.0
byte-zahl.1=not integer-zahl.1
.....
byte-zahl.6=not integer-zahl.6
byte-zahl.7=minus
else
reset minus
byte-zahl.0=integer-zahl.0
byte-zahl.1=integer-zahl.1
.....
byte-zahl.6=integer-zahl.6
byte-zahl.7=minus
end if
vielen dank für eure hilfe im voraus!
Gruß Wolfgang
Negative Zahlen bei Datenübertragung mit Byte
hi,
danke für die schnelle antwort.
die +/- information steckt doch auch bei der integerzahl im msb oder??
wie bekomm ich diese dem mit bei
"signedByte" = LOW(integerzahl) ??
macht das bascom intern??
Gruß Wolfgang
Negative Zahlen bei Datenübertragung mit Byte
Hallo,
möcht micht herzlich bedanken, funktioniert prima.
habs zwar geschafft mit SNAP die Daten zu übertragen, aber bei negativen zahlen war es dann vorbei.
jetzt funkts perfekt, nochmals DANKE!!
Gruß Wolfgang