Читатель, вероятно, обратил внимание на то, что для считывания из ПЗУ записанной в строке информации необходимо выбирать один среди сотен тысяч горизонтальных адресных проводов. Не может же микросхема содержать столько выводов!
Вновь на помощь нам приходят "магические" цифры 0 и 1. Если представить все номера горизонтальных шин двоичными кодами, то для записи десятичных чисел, например, от 0 до 10 000 потребуется всего 14 бит (поскольку 2 13= 9192, а 2 14= 18384).
Так, 1024-я горизонтальная шина будет иметь двоичный код 00010000000000, а 500-я — код 01001111101100. Двоичный код номера горизонтальной шины называется адресом.
Проблема выбора требуемой строки решается в устройстве, называемом дешифратором. Он имеет очень много (в нашем примере 10 000) выходов и мало (в нашем примере 14) входов.
Дешифратор подключает положительное напряжение от батареи к тому из своих выходов, двоичный код (адрес) которого установлен на его входах. Изготовление таких дешифраторов не вызывает особых трудностей: они "встраиваются" прямо в микросхему ПЗУ. Таким образом, микросхема ПЗУ даже с очень большим (до миллиона бит) объемом памяти будет иметь не более двух десятков выводов, соединенных с разрядными шинами, и несколько выводов для подачи в ПЗУ различных управляющих сигналов (например, сигнала, разрешающего считывание). Современные микросхемы выпускаются в корпусах, содержащих до 40 выводов (поэтому их иногда называют "сороконожками").
Описанная память имеет один существенный недостаток: в ней нельзя стирать информацию и записывать новую. Можно только выбросить микросхему с ненужной информацией.
Согласитесь, не слишком удобно.
Какой же должна быть память, чтобы вместо одних комбинаций 0 и 1 в нее можно было легко помещать другие комбинации этих цифр? Интуитивно ясно, что вся память должна состоять из отдельных ячеек, причем в каждую из них можно было бы свободно записать либо 0, либо 1. Значит, ячейка памяти — это устройство, которое по сигналам "записать 0" и "записать 1"принимает одно из двух состояний: 0 и 1.
Принцип работы ячейки памяти поясняет рисунок, на котором в качестве элементов, обеспечивающих два устойчивых состояния, использованы электромеханические реле — электромагниты со специальными контактами.
Контакты реле 1 "дублируют" кнопку "Запись 0" и, когда через электромагнит данного реле ток не протекает, остаются замкнутыми. Но благодаря этому ток имеет возможность течь через электромагнит реле 2. Якорь этого реле, следовательно, притянется к электромагниту и своим штифтом будет поддерживать в разомкнутом состоянии контакты, дублирующие кнопку "Запись 1". Ясно, что цепь тока, в которую включен левый электромагнит, будет разорвана и ток через электромагнит протекать не сможет. Лампочка, также включенная в эту цепь, гореть не будет. Примем, как и раньше, что ячейка памяти находится в состоянии "0". В нем она может находиться как угодно долго, пока мы сами не захотим его изменить. Но сколько бы мы ни нажимали на кнопку "Запись 0", состояние ячейки памяти не изменится, поскольку кнопка "Запись 0" все время находится как бы в "нажатом" положении благодаря замкнутым контактам реле 1.
Иное дело, если нажать кнопку "Запись 1". Тогда замкнется цепь левого электромагнита; через него и лампочку потечет ток; лампочка загорится, т. е. ячейка памяти перейдет в состояние "1". Удержать ячейку памяти в данном состоянии можно, только обеспечив постоянное протекание тока через лампу и левый электромагнит. Это осуществляется автоматически: при протекании тока через реле 1 его якорь притянется к электромагниту и будет поддерживать контакты в разомкнутом состоянии. Тем самым оборвется цепь тока через правый электромагнит. Якорь реле 2 под действием пружины "отлипнет" от электромагнита и перестанет размыкать контакты, дублирующие кнопку "Запись 1". Теперь смело отпускайте кнопку — цепь тока через левый электромагнит и лампу не разорвется, она будет существовать благодаря замкнутым контактам реле 2.
Ячейка памяти будет находиться в состоянии "1" до тех пор, пока мы не нажмем снова на кнопку "Запись 0". Цепочка рассуждений нам уже известна: при этом сработает реле 2 и отключит ток в лампе и реле 1; обесточенное реле 1 отпустит свои контакты и тем самым обеспечит протекание тока через реле 2, которое, в свою очередь, "поддерживает" реле 1 в обесточенном состоянии. Надеемся, вы уже настолько освоились, что не запутались.
Читать дальше