MIX Assembly Language Simulator
Project description
MIXAL
Install
pip install mixal
For MacOS users, you may need to use:
MACOSX_DEPLOYMENT_TARGET=10.9 pip install mixal
Sample
A sample code that finds the maximum value:
import random
import mixal
machine = mixal.Machine()
end_point = 3500
machine.loadCodes([
'X EQU 1000',
' ORIG 3000',
'MAXIMUM STJ EXIT',
'INIT ENT3 0,1',
' JMP CHANGEM',
'LOOP CMPA X,3',
' JGE *+3',
'CHANGEM ENT2 0,3',
' LDA X,3',
' DEC3 1',
' J3P LOOP',
'EXIT JMP *',
' ORIG {}'.format(end_point),
' HLT',
])
num_numbers, max_val = 100, 0
machine.rI1().set(num_numbers)
machine.rJ.set(end_point)
for i in range(1001, 1001 + num_numbers):
val = random.randint(0, 100000)
machine.memoryAt(i).set(val)
max_val = max(max_val, val)
machine.executeUntilHalt()
print('Expected:', max_val)
print('Actual:', machine.rA.value())
print('Compute Cost:', machine.elapsed())
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
mixal-1.143.1.tar.gz
(79.1 kB
view hashes)