XXIIVV

The design for a simple portable computer that only a pen and a piece of paper.

The computer consists of a sheet of paper that contains both the program as well as a number of data registers and a paper nibble dice, that will be used to represent the contents of the data registers. This is a modified and extended edition of the papiercomputer by Wolfgang Back and Ulrich Rohde.

CommandsRegisters
00R0
01
02R1
03
04R2
05
06R3
07
08R4
09
0AR5
0B
0CR6
0D
0ER7
0F

To begin, the pen, representing the program counter, is positioned at the line 00 of a program. The instruction in that line is then processed by the user by either moving the pen(program counter), modifying the value of a data register or by checking if a data register has become “empty”(zeroed).

Operations

This very rudimentary instruction set will not allow to write sophisticated applications, but will teach about the use of commands to program, mnemonics to write up commands in a short code similarly to assembly language instructions and introduce the concepts of registers

Punched card

To encode a program into a 8-bits punched card, we will be using 3 bits of space to encode the operation, which leaves 5 bits for the value. This computer's programs uses only 5 operations out of a possible 8, leaving 3 unused.

binaryoperation
000END
001SKP
010JMP
011ADD
100SUB
101unused
110unused
111unused

The following program subtracts from R1 and adds to R0 until the value of R1 is zero. The result of the addition of R0 and R1 will be stored in R0.

lineoperationvalueoperationhex
0001000011JMP 03$43
0101100000ADD R0$60
0210000001SUB R1$82
0300100001SKP R1$22
0401000001JMP 01$41
0500000000END$00

The binary expression of the operation and value of the previous program can be encoded vertically as the following punched card:

    v   v   v   v   v   v    
            •                
    •   •           •        
        •       •            
                             
                             
                             
    •                        
    •       •   •   •        

Ref. 5-bits Table

The following table show the binary table for 32 addressable lines of a program.

00000000801000101000001811000
01000010901001111000011911001
02000100A01010121000101A11010
03000110B01011131000111B11011
04000000C01100141000001C11100
05000010D01101151000011D11101
06000100E01110161000101E11110
07000110F01111171000111F11111
— Submit an edit to papier.htm(90 lines)

incoming(2): binary nibble dice