Exercise 1 · Number Base Conversion
PracticeLoading question…
Digital Forensics Foundations · Training Module
Master binary, hex, endianness, disk offsets, and file system geometry. Test your skills with interactive calculators and self-grading exercises before tackling the case image.
Everything on a digital storage medium is stored as physical state changes (voltage levels in NAND flash, magnetic orientations on hard disks) that represent binary digits: bits (0 or 1).
Reading long binary streams like 0100110001101111 is exhausting and prone to human error. Humans think naturally in decimal (base 10), but computer architectures group bits into bytes of 8 bits.
Because $2^4 = 16$, exactly 4 bits (called a nibble) map to one hexadecimal digit (0–9, A–F). Therefore, exactly two hexadecimal digits represent one byte (0x00 to 0xFF, corresponding to 0 to 255 in decimal).
Click any bit below to toggle its state ($2^7 \dots 2^0$), or type into any input box to see live conversions across bases.
0x55AA (21,930): The 2-byte boot signature at the end of MBR and VBR sectors (offset 0x01FE–0x01FF).0x01BE (446): Byte offset of the first partition entry in an MBR.0x0200 (512): Size of a standard disk sector in bytes.0x1000 (4,096): Size of a 4 KiB cluster (8 sectors).0x100000 (1,048,576): Exactly 1 MiB (offset of LBA 2048, typical modern partition alignment).0xE5 (229): Marker placed into the first character of a deleted FAT directory entry.FF D8 FF: JPEG image file header (magic bytes).When an integer requires multiple bytes (e.g. 16-bit word = 2 bytes, 32-bit double-word = 4 bytes), computer architectures must decide in which order to write those bytes to memory or disk.
The least significant byte (LSB) is stored at the lowest memory address.
Reconstituted integer: 0x12345678 (decimal 305,419,896).
The most significant byte (MSB) is stored at the lowest memory address (human reading order).
Reconstituted integer: 0x12345678 (decimal 305,419,896).
Enter raw hex bytes from a disk dump (e.g. B8 08 00 00 from a FAT32 boot sector or 00 08 for 2048):
Notice how FAT32 boot sector values (like sectors per FAT or reserved sectors) must always be read in Little-Endian!
An offset is the distance (counted in bytes) from a fixed reference point, beginning at byte 0.
Standard hex editors display data in rows of 16 bytes (columns 0 through F). Why 16? Because in base 16, row offsets naturally increment by 0x10 (16 in decimal):
Click any byte in the MBR partition table snippet below to inspect its row, column, relative offset, and forensic interpretation:
| Offset | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0A | 0B | 0C | 0D | 0E | 0F | ASCII |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 000001B0 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 5C | 1D | 2E | 07 | 00 | 00 | 80 | 01 | ........\.N... |
| 000001C0 | 01 | 00 | 0C | FE | FF | FF | 00 | 08 | 00 | 00 | 00 | F8 | 01 | 00 | 00 | 00 | ....... ........ |
| 000001F0 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 00 | 55 | AA | ..............U. |
Storage hardware organizes physical media into sectors (standard size is 512 bytes). Storage systems use LBA (Logical Block Addressing) to index them:
A multi-gigabyte disk contains hundreds of millions of sectors. Tracking every individual 512-byte sector in an allocation table would take immense memory and cause extreme fragmentation. Operating systems therefore bundle sectors together into clusters (also called allocation units), such as 1 sector (512 B), 8 sectors (4 KiB), or 64 sectors (32 KiB).
The cluster is the atomic allocation unit for file content: a file always receives an integer number of clusters.
A FAT32 volume consists of four sequential regions:
In FAT file systems, clusters are numbered starting from Cluster 2! Clusters 0 and 1 do not physically exist on disk (their FAT entries are reserved for media descriptors and end-of-chain markers).
The parameters below are prefilled with the exact values from the case exhibit usb_evidence.img. Modify them to observe how offsets and boundaries change:
Because files are allocated in whole cluster units, any file whose size is not an exact multiple of the cluster size leaves unallocated space in its final cluster:
Test your understanding with these self-grading exercises. Each exercise features instant answer validation, hints, complete step-by-step solutions, and a "New Problem" generator for infinite practice.
Complete all five practice exercises to prepare for homework tasks T1 & T2.
Loading question…
Loading question…
Loading question…
Loading question…
Loading question…
Now that you've mastered hexadecimal addressing, little-endian decoding, and cluster offset calculations: