How Did the Sinclair ZX80 Handle Floating Point Arithmetic
The Sinclair ZX80, launched in 1980, is historically significant for being one of the first computers available in the UK under £100, but it possessed severe limitations regarding mathematical operations. Unlike modern systems or even its successor, the ZX81, the standard ZX80 did not natively support floating-point arithmetic within its built-in BASIC ROM. Instead, the machine was restricted to integer mathematics, meaning it could only process whole numbers without decimal points, which significantly impacted its utility for scientific or complex calculations.
This limitation was primarily driven by the need to keep costs and memory usage extremely low. The ZX80 came with only 1KB of RAM, and floating-point routines require substantial memory space for both the code and the storage of multi-byte number formats. The Z80 processor, while capable, lacked a dedicated floating-point unit (FPU), so any such calculations would have to be performed via software emulation. Sinclair Research decided to omit these routines from the standard 4KB ROM to ensure the machine remained affordable and responsive for basic programming tasks and games.
Users requiring decimal calculations had to rely on workarounds such as fixed-point arithmetic. This method involved programmers manually scaling integers to represent decimal values, effectively treating a number like 100 as 1.00 through code logic rather than hardware or ROM support. While some third-party expanded ROMs eventually offered floating-point capabilities, they were not part of the original experience. Consequently, the ZX80 remains a notable example of early home computing where hardware constraints dictated a strict integer-only mathematical environment.