2021年7月21日 星期三

nand2tetris project2

 project2

要怎麼用HDL實現if-else語法呢?可以用上週作業寫過的Mux16。


Mux16會有兩個16-bit input,一個是原本的值,一個是符合條件後會變成的值,sel則是判斷的依據。


基本上可以想成:


if(sel)

    then b

else

    then a

zr要怎麼判斷呢?可以用上週作業的Or8Way兩次,如果兩個結果都為0就代表out為零。


幾個實作ALU會需要的語法:


b[0..15]=false // 輸入的第0~15 bit都為0

out[0..7]=low8, out[8..15]=high8, out[15]=signBit

// 把out的某些bit另外拿出來,之後要用來做其他判斷

沒有留言:

張貼留言