Ponieważ chcemy przetwarzać jakieś dane, potrzebny jest sposób na przechowanie wartości, chociażby jednego bitu. Można zrealizować układ cyfrowy, którego celem będzie ustalenie (przypisanie) konkretnego stanu (zero lub jeden) oraz jego przetrzymanie. Jest cała gama takich układów, zaprezentuję tutaj najprostszy z nich: przerzutnik typu D.

Taki przerzutnik, w najprostszej formie jest w stanie ustawić wartość jednego bitu oraz przechować jego stan tak długo, dopóki nie nastąpi zmiana wartości (reset). Wejściem E ustalamy czy ma nastąpić zmiana stanu na wyjściu Q i !Q (!Q czyli zanegowane Q- to wyjście traktuj tak, jakby było tam dla wygody inżyniera, który ma osadzić taki układ w większej całości). Wejściem D sterujemy stanem pamięci, jeżeli wejście E jest aktywne, to wejściem D ustawimy wartość, jaką ma przechować przerzutnik.

d-latch.pngSchemat przerzutnika typu D- zatrzask przy użyciu bramek NAND

Funkcję, jaką realizuje taki przerzutnik można przedstawić za pomocą następującej tabeli prawdy:

d-latch-stany.pngTabela prawdy dla przerzutnika D- zatrzask

Takim sposobem mamy możliwość zapisanie całego bitu… Jeżeli bramka NAND potrzebuje do swojej budowy dwóch tranzystorów, to jeden bit wymaga aż 8 tranzystorów. Jeden bajt (czyli osiem bitów) wymaga wtedy 64 tranzystory- tyle potrzeba aby zachować w pamięci jeden znak… Idąc dalej, jeżeli mamy komputer wyposażony w 2 gigabajty pamięci RAM, to wymaga to 137438953472 tranzystorów. To obrazuje dlaczego małe rozmiary tranzystora miały taki ogromny wpływ na postęp inżynierii komputerowej. Jak to możliwe, że tak wiele tranzystorów mieści się na tak małej powierzchni? Po pierwsze, pamięci o większych pojemnościach nie są zbudowane dokładnie w taki sposób- są bardziej zoptymalizowane, przez co potrzebują mniej komponentów. Po drugie, tranzystory nie są umieszczone “płasko” tylko wielowarstwowo. Dzięki temu i wielu innym technikom, możliwe jest umieścić miliardy tranzystorów na powierzchni kilku centymetrów kwadratowych.

Jak posługiwać się taką pamięcią? Jak coś do niej zapisać? Skąd wiadomo, w które miejsce coś zapisujemy, a z którego coś odczytujemy? Wyobraź sobie taki duży regał. Każda jego półka jest oznakowana kolejną liczbą, większą od poprzedniej. Ta etykieta to po prostu adres konkretnej półki. Pamięć w komputerze, każda jej komórka, ma swój unikalny adres. Za pomocą adresu można zlokalizować konkretne miejsce w pamięci i umieścić w nim konkretną wartość (wartość zakodowaną jako ciąg zer i jedynek). Każda komórka pamięci posiada ten sam rozmiar- wielokrotność bajtu. To, jaki dokładnie jest to rozmiar zależy od użytej technologii, finezji inżyniera konstruującego dany model i wielu innych czynników. Jednak najważniejszym czynnikiem decydującym o jej wielkości jest jednostka, która przetwarza dane zapisane w tych komórkach.

Powiązane tematy

URL - adres internetowy

URL - adres internetowy

"W internecie jest wszystko." Do każdego zasobu jest tak samo daleko, wystarczy znać jego adres. Adres zasobu to ścieżka, która prowadzi dokładnie do tej rzeczy. W niej samej zakodowane jest sporo interesujących informacji. Czytaj całość

Sleep- zatrzymywanie programu na pewien czas

System operacyjny, który zarządza uruchomionymi programami, przydziela każdemu porcję czasu procesora, który wykorzystuje ją na wykonanie swojego algorytmu. Program nie może pracować cały czas, bez odpoczynku, jednak istnieje możliwość odłożenia jego pracy w czasie. Czytaj całość

Aplikacje hybrydowe

Aplikacje hybrydowe

Problem pojawia się, gdy programista zaznajomiony z konkretną platformą staje przed zadaniem napisania "tego samego" na inną platformę. Wtedy jego wiedza może się okazać co najmniej niewystarczająca, a niekiedy nawet może przeszkadzać w poznawaniu nowego. Czytaj całość


Piotr Poźniak

Piotr Poźniak

Programuję od ponad 15 lat. Prowadzę software house. Angażuję i zachęcam wszystkich do programowania w ramach inicjatywy Programowanie jest łatwe.

Bądź pierwszy, podziel się swoją opinią!

Obrazek przedstawiający nadgryzione ciasteczko