SCALA 3 模擬電路

2022-07-29 18:39:14 字數 1840 閱讀 9184

simulation

package

demo17

abstract

class

simulation

else

} //向日程新增工作項,第二個引數是傳名引數

def afterdelay(delay: int)(block: => unit) =

private def next() =

} def run() =

//執行所有的操作

while(!agenda.isempty) next()

}}

basiccircuitsimulation

package

demo17

abstract

class basiccircuitsimulation extends

simulation

}def addaction(a: action) =

} //非門,也就是翻轉器,在uinput和output之間建立飯莊器

def inverter(input: wire, output: wire) =

//test

//output setsignal !inputsig

}

//新增動作到input線

input addaction invertaction

} //與門,輸入兩個線訊號的&操作

def andgate(a1: wire, a2: wire, output: wire) =

//test

//output setsignal (a1sig & a2sig)

} a1 addaction andaction

a2 addaction andaction

} def orgate(o1: wire, o2: wire, output: wire) =

//test

//output setsignal (o1sig | o2sig)

} o1 addaction oraction

o2 addaction oraction

} //用來觀察線的型號變化

def probe(name: string, wire: wire) =

wire addaction probeaction

}}

circuitsimulation

package

demo17

abstract

class circuitsimulation extends

basiccircuitsimulation

def fulladder(a: wire, b: wire, cin: wire, sum: wire, cout: wire) =

}

mysimulation

package

demo17

object mysimulation

extends

circuitsimulation

測試結果:

package

demo17

import

demo17.mysimulation._

object demo18test

}

測試結果:

模擬電路的半加器

scala (3) 資料型別

scala 與 j a有著相同的資料型別,下表列出了 scala 支援的資料型別 上表中列出的資料型別都是物件,也就是說scala沒有j a中的原生型別。在scala是可以對數字等基礎型別呼叫方法的。整型字面量用於 int 型別,如果表示 long,可以在數字後面新增 l 或者小寫 l 作為字尾。0...

模擬電路 釋疑

1.管放大電路分析模型 1 直流通路模型 將交流訊號源視為短路,但保留內阻。電容視為開路,電感線圈視為短路。2 交流通路模型 電容視為短路,直流電源視為短路,直接接地。你學過 疊加原理 嗎?在那裡,當乙個電路中有幾個電源的情況下,分析電路時,讓其中的乙個電源起作用,而將其餘的電源作如下處理 將電壓源...

模擬電路筆記

1.基本放大電路 把小訊號放大成為大訊號。單獨的三極體是無法放大訊號的,只有給三極體提供電壓,導通才具有放大能力。可應用於揚聲器 繼電器 伺服電機等。2.放大器 能把輸入訊號的電壓或功率放大的裝置,由電子管或電晶體 電源變壓器和其他電器元件組成。用在通訊 廣播 雷達 電視 自動控制等各種裝置中。3....