GCD Euclidean Algorithm


To implement a program that computes the GCD of two numbers.



The program to compute the GCD and its equivalent low-level instructions executed by the hardware. The low-level instructions used are:

assign It assigns a value to a variable
load It loads a value of a global or local variable to the given register
store It stores the value from the given register to the global or local variable
add It adds the values contained in two registers and puts the result in the first register.
out It prints the output value to the screen.
in It reads the input from to user and stores in a variable
copy It copies the value of a variable between segments of memory.
push It pushes a variable on to the stack
pop It pops out the variable out of the stack
rem It performs division operation of the values contained in two registers and puts the remainder in the first register.
fcall It initiates a call to the given function.
fenter It changes the control of execution to the called function.
freturn It returns the control from the called function to the caller.
neq Check if the values in two registers are different.
if_true Checks if the condition evaluated to true.
if_false Checks if the condition evaluated to false.
label Is used to mark the position in the low-level instructions to enable jumping to the marked position.
exit Signifies the end of program