Romasm Extended

Advanced features: Fractions, Negative Numbers, and ISA

1. Radix Point for Fractions

Represent fractional values using a radix point (colon :)

2. Negative Numbers

Represent negative numbers using Sign-Magnitude or Ten's Complement

Sign-Magnitude: Simple prefix with minus sign (e.g., -I V for -15)
Ten's Complement: Uses complement arithmetic (e.g., IX IX VIII V for -15 in 4-digit system)

3. Romasm ISA (Instruction Set Architecture)

Map Roman symbols to CPU operations - treat Romasm as assembly language

Instruction Mappings

SymbolOperation
IINC (Increment)
DDEC (Decrement)
VJMP (Jump)
XSTORE
LLOAD
CCMP (Compare)
MMUL (Multiply)
AADD
SSUB (Subtract)

Register Mappings

Roman numerals I-IX map to registers 0-8

Example Instructions:
  • I II - Increment register 1
  • X V III - Store value 5 to address 3
  • L I - Load from register 0

Examples

Fraction Example

15.51 in Romasm: I V:V I

This represents: 15 + 5/10 + 1/100 = 15.51

Negative Example (Sign-Magnitude)

-15 in Romasm: -I V

Simple prefix notation

ISA Example

Instruction: X V III

STORE value 5 to address 3