Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
23
Task/Four-bit-adder/PicoLisp/four-bit-adder.l
Normal file
23
Task/Four-bit-adder/PicoLisp/four-bit-adder.l
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
(de halfAdder (A B) #> (Carry . Sum)
|
||||
(cons
|
||||
(and A B)
|
||||
(xor A B) ) )
|
||||
|
||||
(de fullAdder (A B C) #> (Carry . Sum)
|
||||
(let (Ha1 (halfAdder C A) Ha2 (halfAdder (cdr Ha1) B))
|
||||
(cons
|
||||
(or (car Ha1) (car Ha2))
|
||||
(cdr Ha2) ) ) )
|
||||
|
||||
(de 4bitsAdder (A4 A3 A2 A1 B4 B3 B2 B1) #> (V S4 S3 S2 S1)
|
||||
(let
|
||||
(Fa1 (fullAdder A1 B1)
|
||||
Fa2 (fullAdder A2 B2 (car Fa1))
|
||||
Fa3 (fullAdder A3 B3 (car Fa2))
|
||||
Fa4 (fullAdder A4 B4 (car Fa3)) )
|
||||
(list
|
||||
(car Fa4)
|
||||
(cdr Fa4)
|
||||
(cdr Fa3)
|
||||
(cdr Fa2)
|
||||
(cdr Fa1) ) ) )
|
||||
Loading…
Add table
Add a link
Reference in a new issue