This commit is contained in:
Miloslav Ciz 2024-02-04 21:08:42 +01:00
parent 76147e3778
commit 1ae8bf1e9d
10 changed files with 91 additions and 59 deletions

View file

@ -120,7 +120,7 @@ Also an alternative to having a top bucket full of marbles going to the bottom b
NOTE: Balls, or potentially other "falling/moving objects", may be used to perform computation also in other ways than we'll describe further on -- some of the alternative approaches are for example:
- The **[billiard ball computer](billiard_ball_computer.md)** (which also has a great advantage of performing reversible computation).
- The **[billiard ball computer](billiard_ball_computer.md)** (which also has a great advantage of performing [reversible computation](reversible_computing.md)).
- Another possible idea is that of the falling object ITSELF encoding a value (likely just a bit), for example imagine some kind of arrow shape which itself represents either 1/0 by pointing up/down, changing its orientation as it passes through the gates (we would also have to ensure the orientation can't change spontaneously on its own of course).
- A bit can also be represented by presence/absence of the marble -- this is utilized e.g. by *binary marbles* (https://binarymarbles.weebly.com/how-it-works.html). For example the AND gate is implemented by one input marble falling into a hole, making a "bridge" for the other marble that then overcomes the hole and reaches output. Timing may play an important role as some gates (e.g. XOR) require dropping the input marbles simultaneously.
- ...
@ -150,7 +150,7 @@ Some things that can be done with marbles include:
0 1 0 1 0 1 0 1
```
*Marble falling into a [flip-flop](flip_flop.md) will test its value (fall out either from the 0 or 1 hole) and also flip the bit -- next marble will fall out from the other hole. Flip-flops can be used to implement **[memory](memory.md)***
*Marble falling into a [flip-flop](flip_flop.md) will test its value (fall out either from the 0 or 1 hole) and also flip the bit -- next marble will fall out from the other hole. Flip-flops can be used to implement **[memory](memory.md)**.*
```
\: marble slide