XXIIVV

The design for a simple portable computer that only requires a pencil and a sheet of paper.

The computer consists of a sheet of paper that contains both the program as well as the state of the program during each step of the evaluation.

4 x 3 Paper Program
paper register — 4 x 3 Paper Program19H00

Register Machine Emulator

The pen, representing the program counter, is positioned at the first line of the program. The instruction on that line is processed by modifying the value of a register, or checking if a register is Zero and then moving to the next instruction. The evaluation stops upon reaching a halt or empty instruction.

2 - 5 Paper Program
paper rewriting — 2 - 5 Paper Program19G11

Rewriting Machine Emulator

Programs are written as a set of rules, and the initial content of a unordered bag. During evaluation, rules are tested in a sequence from the first to the last, when the bag contains a rule's left-side, the symbols are replaced by those in the right-side, and search for the next rule starts back again from the beginning.

The advantages over the register machine are that it has only one operation, and does away with textual language altogether. To find more exciting programs, see the Pocket Rewriting Computer.

12 x 34 Paper Program
paper product — 12 x 34 Paper Program19G12

Multiplication Arithmetic Unit

A visual multiplication program that relies on counting the intersection of lines to get the product from multiplication of large numbers. For digits larger than 4, lines of a different color, or folds in a different direction, can reduce clutter.

3 + 1 Paper Program
paper sum — 3 + 1 Paper Program19G10

Addition Arithmetic Unit

A visual addition program that relies on nomography to get the sum from two numbers.

Fortune Memory Storage
paper memory — Fortune Memory Storage19G09

Random Memory Access

A key-pair database with 16 cells of memory can be made with a paku-paku(fortune teller), assigning a two-part notation with a key for each of the four outside faces, and eight inside faces, can make memory reading/writing more efficient.

Paper OR Gate
paper logic — Paper OR Gate19H01

Logic Gates

Functionaly logic gates can be implemented in flat origami as described by Inna Zakharevich's paper. I keep a copy of the instructions here.

A Pencil Dice
pencil dice — A Pencil Dice19C10

Randomness Generator

Useful little trick to make a quick dice by marking the end of a six-sided pencil with the nail of your thumb or a sharp edge. As to not damage the lead, it's probably best to roll on a soft surface.

incoming hpda nibble dice paper data storage virtual machines uxn devlog