nand2vm
1.0.0
Tujuan dari proyek ini adalah untuk membuat versi Python dari Nand2Tetris, NAND2VM menyertakan rangkaian uji lengkap Nand2Tetris, dan Assembler dengan versi Python.
Bitarray digunakan saat memanipulasi data bit, menggunakan API Bitarray, kita dapat dengan cepat membuat array bit endian kecil:
> >> import nand2vm
# Init from list using big endian
> >> b = nand2vm . BitArray ([ True , True , False , True ])
> >> b
1101
> >> b [ 0 ]
True
> >> b [ 1 ] # Internal using small endian
False
> >> b . data
[ True , False , True , True ]
# Init from integer, default using 16 bits
> >> b = nand2vm . BitArray ( - 1 )
> >> b # 16 bits 2's complement
1111111111111111
# Init from string
> >> b = nand2vm . BitArray ( '1101' )
> >> b
1101Satu -satunya gerbang menggunakan operator python untuk membangun
> >> def Nand ( a : bool , b : bool ) -> bool :
... return not ( a and b )
> >> nand2vm . Nand ( True , True )
False
> >> nand2vm . Nand ( True , False )
True
> >> Proyek 1 Implement:
Proyek 2 Implement:
Proyek 3 Implement:
Proyek 6 Implement: