Create simple assembly virtual machine using c language.
move data from one register to another register.
move data directly to a register.
load data in a memory address directly to a register.
load data in memory address that stored in a register to another register.
store data in a register to relavent memory address.
store data in a register to relavent memory address which stored in another register.
add 2 int values in 2 registers and store into the accumilator.
store int value of { reg1 - reg2 } to accumilator.
store value of { reg1 % reg2 } to accumilator.
store memory address of next instruction to be executed in stack after rising stack pointer & store inputed memory address into pc.
store memory address in stack into pc.
print data in given register.
store data in given register in stack after rising stack pointer.
store last pushed data of stack into given register & decrease sp to next data in stack.
store given memory address into pc for execute that memory address next.( jump pc to given address).
if data in given register NOT equal to 0(ZERO) , point pc to given memory address. else increase pc normaly by 1.
store 1 in register 'halt' to stop the program.
print given word.