Hexadecimal exercise
•
28 Feb 2007, 18:37
•
Journals
The hexadecimal dump from part of a microcomputer's memory is as follows
0000 4265 6769 6EFA 47FE BB87 0086 3253 7A29
0010 698F E000
The dump is made up of a series of strings of characters, each string being composed of nine groups of four hexadecimal characters. The first four characters in each string provide the starting address of the following 16 bytes. For example, the first byte in the second string (i.e. $C9) is at address $0010 and the second byte (i.e. $8f) is at address $0011.
The 20 bytes of data in the two strings represent the following sequence of items (starting at location 0000):
a) fice consecutive ASCII-encoded characters
b) one unsigned 16-bit integer
c) one two's complement 16-bit integer
d)one unsigned 16-bit fraction
e) one six-digit natural BCD integer
f) one 16-bit unsigned fixed point number with a 12-bit integer part and a 4-bit fraction
g) one 4-byte floating point number with a sign bit and true fraction plus an exponent biased by 64
Decode the hexadecimal data, assuming that it is interpreted as above first one wins a whole weekend with loekino.
0000 4265 6769 6EFA 47FE BB87 0086 3253 7A29
0010 698F E000
The dump is made up of a series of strings of characters, each string being composed of nine groups of four hexadecimal characters. The first four characters in each string provide the starting address of the following 16 bytes. For example, the first byte in the second string (i.e. $C9) is at address $0010 and the second byte (i.e. $8f) is at address $0011.
The 20 bytes of data in the two strings represent the following sequence of items (starting at location 0000):
a) fice consecutive ASCII-encoded characters
b) one unsigned 16-bit integer
c) one two's complement 16-bit integer
d)one unsigned 16-bit fraction
e) one six-digit natural BCD integer
f) one 16-bit unsigned fixed point number with a 12-bit integer part and a 4-bit fraction
g) one 4-byte floating point number with a sign bit and true fraction plus an exponent biased by 64
Decode the hexadecimal data, assuming that it is interpreted as above first one wins a whole weekend with loekino.
the statement $C9 is at address $0010 (1st byte of 2nd string) is incorrect and could send the unwary into an infinite loop