Help Center›FreeBASIC
HiBytekeyword
Gets the second byte of the operand.
Syntax
#define HiByte( expr ) ((Cast(UInteger, expr) And &h0000FF00) Shr 8)
Parameters
| Name | Description | |
|---|---|---|
expr | A numeric expression, converted to an UInteger value. |
Return value
Returns the value of the high byte of the low 16bit word of expr.
Description
This macro converts the numeric expression
expr to an UInteger value, then expands to an UInteger representing the value of its second byte - that is the most-significant (high) byte of the least-significant (low) 16bit word of expr.Remarks
Usage
result = HiByte( expr )
Dialect Differences
- Not available in the -lang qb dialect unless referenced with the alias
__HIBYTE.
Differences from QB
- New to FreeBASIC
See also
Example
Dim N As UInteger
'Note there are 16 bits
N = &b1010101110000001
Print "N is "; N
Print "The binary representation of N is "; Bin(N)
Print "The most significant byte (MSB) of N is "; HiByte(N)
Print "The least significant byte (LSB) of N is "; LoByte(N)
Print "The binary representation of the MSB is "; Bin(HiByte(N))
Print "The binary representation of the LSB is "; Bin(LoByte(N))
Sleep
The output would look like:
N Is 43905 The Binary representation of N Is 1010101110000001 The most significant Byte (MSB) of N Is 171 The least significant Byte (LSB) of N Is 129 The Binary representation of the MSB Is 10101011 The Binary representation of the LSB Is 10000001
Reference
- Documented in KeyPgHibyte.html