„Wyglądać” oznacza metaforę. Jeśli weźmiemy „jak to będzie wyglądać” dosłownie, będzie to wyglądało jak fantazyjnie wytrawiony kawałek krzemu siedzący na płycie głównej. Wyraźnie celem była metafora. Aby zbudować metaforę, musimy spojrzeć na to, co naprawdę jest pierwsze. Następnie możemy zbudować metaforę, która będzie akceptowalna. To jest trochę długie, ale na szczęście kończy się dla ciebie metaforą wideo .
Kod maszynowy jest faktycznie przechowywany w pamięci jako bity. Chipy pamięci są zazwyczaj DRAM , który przechowuje te bity jako napięcia na kondensatorze i elektronach. Oba są ze sobą połączone - trudno mówić o napięciach bez elektronów. Czasami wygodnie jest rozmawiać o jednym lub drugim, ale rozumiem, że gdziekolwiek idzie, drugi podąża za nim.
Podróż kodu maszynowego rozpoczyna się od „pobrania”. Szczególny wzór napięć jest przykładany do drutów układu pamięci RAM, wskazując, że ten konkretny zestaw bitów powinien zostać przesłany do procesora. Dlaczego? Nie wiem, nie obchodzi mnie to. Zazwyczaj ten sygnał jest wysyłany, ponieważ procesor zakończył ostatnią instrukcję i prosi o nową jako instynktowną odpowiedź, jak pies proszący o drugą ucztę po tym, jak dałeś jej pierwszą. Proces ten rozpoczyna się od pewnego pierwotnego kopnięcia w spodnie, spowodowanego naturalną niestabilnością procesora. Kiedy zasilacz przykłada stałe napięcie do układu, wzrost napięcia ostatecznie prowadzi do tego, że procesor umieszcza prawidłowe napięcie na układach pamięci RAM, aby uzyskać pierwsze instrukcje (trochę zmieniam warstwę BIOS-u, ponieważ nie jest to ważne do historii. Spójrz na to).
Współczesna pamięć przesyła dane równolegle. Oznacza to, że bity, które składają się na kod maszynowy, są dzielone na „tory” (32 lub 64 są wspólne), co jest logicznym sposobem na przekazanie przewodów 32/64 z pamięci RAM do procesora. Napięcie na tych liniach jest podnoszone i obniżane w razie potrzeby, aby przesłać je do procesora.
Gdy znajdzie się w procesorze, może wykonać swoją pracę. Jest to dziedzina mikroarchitektury i może się skomplikować, ponieważ jest to dosłownie przemysł wart miliard dolarów. Napięcia te wpływają na tranzystory, które wpływają na inne napięcia, w sposób, który możemy opisać jako „dodawanie bitów” lub „mnożenie”. W rzeczywistości wszystkie są tylko napięciami reprezentującymi te bity, w taki sam sposób, w jaki możemy napisać 5-znakowy ciąg „2 + 2 = 4” na kartce papieru i powiedzieć, że zrobiliśmy matematykę. Ołówkowy grafit nie jest numerem dwa. To tylko fizyczna reprezentacja, której używamy dla tego numeru.
Tak właśnie działa prawdziwy system na niezwykle wysokim poziomie. Pominąłem dobrze ... właściwie wszystko ... ale jest wystarczająco przyzwoite, aby móc wrócić do twojego rzeczywistego pytania. Jak by to wyglądało [metaforycznie]?
Tak się składa, że myślę, że Martin Molin mógł zbudować najlepszą metaforę za pomocą swojej marmurowej maszyny . Kod maszynowy jest kodowany (ręcznie) na niektórych paskach Lego Technics w środku jako kołki, a nie napięcia na kondensatorze. To bardziej przypomina EPROM niż DRAM, ale oba przechowują dane. Kulki są jak elektrony, które poruszają się pod wpływem napięć (lub grawitacji, w przypadku kul). A gdy elektrony się poruszają, przykładają siłę do bram, które wykonują różne czynności.
Jego maszyna jest prosta w porównaniu z nowoczesnym procesorem, ale nie jest aż tak źle, jeśli chodzi o metafory. I to jest chwytliwe!