wm: 5551

ref: 61271a867e20a6b9c3d4de8a1ee209b1af2f3ecd
dir: /5551.h/

View raw version
#define MMAX ( 1 << 8 )

/* ops */
enum
{
	/* machine related */
	DIE, /* drop dead */
	OUT,

	/* logical */
	NOT,
	AND,
	NOR,
	XOR,

	/* arithmatic */
	SUB,
	ADD,
	INC,
	DEC,

	/* shift */
	SHR,
	SHL,

	/* memory */
	PUT, /* stores something in reg */
	MOV, /* copy stuff from a reg to memory */
	LDM, /* load from memory into register */
	NTH, /* returns the Nth bit */
};

/* registers */
enum
{
	NUL,
	CARRY,
	OVERFLOW,
	NSIGN,
	PARITY,
	MODE, /* int or bool */
	ON, /* false in case of fatal errors, can be used as a source of 1s */
};