mirror of
https://github.com/soconnor0919/eceg431.git
synced 2025-12-11 06:34:43 -05:00
345 lines
3.6 KiB
Scilab
345 lines
3.6 KiB
Scilab
// This file is part of www.nand2tetris.org
|
|
// and the book "The Elements of Computing Systems"
|
|
// by Nisan and Schocken, MIT Press.
|
|
// File name: projects/2/ALU-basic.tst
|
|
|
|
// Tests the basic version of the ALU chip.
|
|
// DOES NOT replace the final test provided by ALU.tst.
|
|
// Specifically: Tests the ALU logic that computes the 'out' output;
|
|
// The 'zr' and 'ng' output bits are ignored.
|
|
|
|
load ALU.hdl,
|
|
output-file ALU-basic.out,
|
|
compare-to ALU-basic.cmp,
|
|
output-list x%B1.16.1 y%B1.16.1 zx nx zy ny f no out%B1.16.1;
|
|
|
|
set x %B0000000000000000,
|
|
set y %B1111111111111111,
|
|
|
|
set zx 1,
|
|
set nx 0,
|
|
set zy 1,
|
|
set ny 0,
|
|
set f 1,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 1,
|
|
set ny 1,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 1,
|
|
set ny 0,
|
|
set f 1,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 1,
|
|
set ny 1,
|
|
set f 0,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 0,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 1,
|
|
set ny 1,
|
|
set f 0,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 0,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 1,
|
|
set ny 1,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 1,
|
|
set zy 1,
|
|
set ny 1,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 1,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 1,
|
|
set ny 1,
|
|
set f 1,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 1,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 1,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 0,
|
|
set ny 1,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 0,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 1,
|
|
set f 0,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set x %B101101110100000,
|
|
set y %B001111011010010,
|
|
|
|
set zx 1,
|
|
set nx 0,
|
|
set zy 1,
|
|
set ny 0,
|
|
set f 1,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 1,
|
|
set ny 1,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 1,
|
|
set ny 0,
|
|
set f 1,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 1,
|
|
set ny 1,
|
|
set f 0,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 0,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 1,
|
|
set ny 1,
|
|
set f 0,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 0,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 1,
|
|
set ny 1,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 1,
|
|
set zy 1,
|
|
set ny 1,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 1,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 1,
|
|
set ny 1,
|
|
set f 1,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 1,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 1,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 1,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 0,
|
|
set ny 1,
|
|
set f 1,
|
|
set no 1,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 0,
|
|
set zy 0,
|
|
set ny 0,
|
|
set f 0,
|
|
set no 0,
|
|
eval,
|
|
output;
|
|
|
|
set zx 0,
|
|
set nx 1,
|
|
set zy 0,
|
|
set ny 1,
|
|
set f 0,
|
|
set no 1,
|
|
eval,
|
|
output;
|