При изготовлении выполняют все соединения в матрице и поэтому при включении напряжения питания на всех выходах устанавливается уровень напряжения, соответствующий логическому нулю. В процессе программирования матрицы через диоды пропускают токи такой величины, чтобы расплавить там, где это нужно, плавкие соединения, оставив невредимыми диоды. В результате в матрице получается необходимое распределение единиц и нулей. На программирование одной матрицы емкостью 1024 бит требуется 1—10 мс.
Второй тип программируемого ПЗУ основан на матрицах взрывных диодов. Матрицы такой памяти состоят из обычных биполярных транзисторов, у которых переходы база — коллектор замкнуты накоротко на корпус с помощью перехода база — эмиттер. Программирование матрицы сводится к подаче на заданные переходы база — эмиттер относительно высокого напряжения, размыкающего соответствующий переход. На программирование такого ПЗУ требуется меньше времени. Оба типа программируемых ПЗУ имеют тот существенный недостаток, что в них невозможно последующее изменение записанной программы.
В связи с этим более перспективными считаются перепрограммируемые ПЗУ, позволяющие в процессе эксплуатации изменять программы. Разработаны ПЗУ, в которых стирание ранее записанной программы осуществляется с помощью ультрафиолетовых лучей.
Для записи новой программы на контакты БИС подаются электрические сигналы с программатора. Такой тип нерепрограммируемого ПЗУ используется, например, в микроЭВМ, выпускаемых фирмой «Jntel». К недостатку такого типа памяти относится необходимость использования специального источника ультрафиолетовых лучей и импульсов относительно высокого напряжения (30— 40 В). Программирование и перепрограммирование ПЗУ производится потребителем микропроцессоров исходя из решения конкретных задач.