>>4 => shift byte 4 position to the right. so you keep only the 4 high bits
& $F => Bitwise and with hex F. so you keep only the 4 low bits
everything is in the PBP manual section 4.17
>>4 => shift byte 4 position to the right. so you keep only the 4 high bits
& $F => Bitwise and with hex F. so you keep only the 4 low bits
everything is in the PBP manual section 4.17
Steve
It's not a bug, it's a random feature.
There's no problem, only learning opportunities.
It's no more difficult than copying data from a single variable to another.
X VAR BYTE
Y VAR BYTE
X = 3
Y = X
You can state X = SSMAX(23), Y = SSMAX(34), etc,,.
Since the resulting value will be a word, then use something like this;
SSMAX(23) contains 83h
SSMAX(34) contains 03h
Result VAR WORD
Result.LowByte = SSMAX(23) ' Place 83h into lowbyte
Result.HighByte = SSMAX(34) ' Place 03h into highbyte
HSEROUT [DEC Result] ' Print decimal value of 0383h = 899
Last edited by Bruce; - 28th February 2005 at 04:29.
Seems like I should be able to figure this out, but I can't ...
I have an array that contains 24 bits which equate to an altitude in tenths of meters.
alt[1]
alt[2]
alt[3]
I need to 1) display this, and 2) convert from meters to feet, so I need to stuff all these into a single variable which represents actual meters as opposed to tenths of meters, then convert to feet....
Any ideas out there? They way I am doing it now is not working. I am just reading these into alt1, alt2, alt2, and showing them as #alt1, #alt2, #alt3... I get 13130 which may be 131.30 meters,(which would be about right) but I am not sure. I am also not sure how to make this a single variable ..
Thanks !
Tom
I have no answer, but I do see an immediate problem.
A byte contains 8 bits, a word contains 2 bytes; that's a total of 16 bits.
There is a way to do 32 bit math, I saw a section in the manual. You work with 2 separate words or something, I didn't pay much attention.
Robert
![]()
My Creality Ender 3 S1 Plus is a giant paperweight that can't even be used as a boat anchor, cause I'd be fined for polluting our waterways with electronic devices.
Not as dumb as yesterday, but stupider than tomorrow!
Page 33, 4.17.1 - Multiplication.
Using * and **, / and //.
Good luck!
Robert
![]()
My Creality Ender 3 S1 Plus is a giant paperweight that can't even be used as a boat anchor, cause I'd be fined for polluting our waterways with electronic devices.
Not as dumb as yesterday, but stupider than tomorrow!
Bookmarks