Sha256: 1bd86bb030205c030a3ae43b6177ace7e402eca47e79dcceef144fd5a34173c4

Contents?: true

Size: 1.02 KB

Versions: 10

Compression:

Stored size: 1.02 KB

Contents

This can be assembled with macro1.c distributed with SIMH and then run on the SIMH PDP-1 simulator.

hello   
/ above: title line - was punched in human readable letters on paper tape
/ below: location specifier - told assembler what address to assemble to
100/
lup,	lac i ptr		/ load ac from address stored in pointer
	cli			/ clear io register
lu2,	rcl 6s			/ rotate combined ac + io reg 6 bits to the left
				/ left 6 bits in ac move into right 6 bits of io reg
	tyo			/ type out character in 6 right-most bits of io reg
	sza			/ skip next instr if accumulator is zero
	jmp lu2			/ otherwise do next character in current word
	idx ptr			/ increment pointer to next word in message
	sas end			/ skip next instr if pointer passes the end of message
	jmp lup			/ otherwise do next word in message
	hlt			/ halt machine
ptr,	msg			/ pointer to current word in message
msg,	text "hello, world"	/ 3 6-bit fiodec chars packed into each 18-bit word
end,	.         		/ sentinel for end of message
start 100			/ tells assembler where program starts

Version data entries

10 entries across 7 versions & 1 rubygems

Version Path
zettacode-0.1.7 files.zettacode/hello_world.text/pdp-1_assembly.txt
zettacode-0.1.6 files.zettacode/hello_world.text/pdp-1_assembly.txt
zettacode-0.1.6 files.zettacode2/hello_world.text/pdp-1_assembly.txt
zettacode-0.1.5 files.zettacode/hello_world.text/pdp-1_assembly.txt
zettacode-0.1.5 files.zettacode2/hello_world.text/pdp-1_assembly.txt
zettacode-0.1.4 files.zettacode/hello_world.text/pdp-1_assembly.txt
zettacode-0.1.4 files.zettacode2/hello_world.text/pdp-1_assembly.txt
zettacode-0.1.3 files.zettacode/hello_world.text/pdp-1_assembly.txt
zettacode-0.1.2 files.zettacode/hello_world.text/pdp-1_assembly.txt
zettacode-0.1.1 zettacode.files/hello_world.text/pdp-1_assembly.txt