Intel 8080

редактировать

Intel 8080
KL Intel i8080 Black Background.jpg Вариант процессора Intel C8080A с белой керамикой, золотым теплораспределителем и золотыми контактами.
Общие информация
Спущена на водуапрель 1974 г.; 46 лет назад (1974-04)
Снято с производства1990; 30 лет назад (1990)
ПродаетсяIntel
РазработаноIntel
Обычный производитель (-ы)
  • Intel
Производительность
Макс. ЦП тактовая частота от 2 МГц до 3,125 МГц
Ширина данных8 бит
Ширина адреса16 бит
Архитектура и классификация
Мин. размер элемента 6 мкм
Набор команд 8080
Физические характеристики
Транзисторы
  • 6000
Ядра
  • 1
Корпус (-а)
  • 40-контактный DIP
Разъем (ы)
История
ПредшественникIntel 8008
ПреемникIntel 8085

Intel 8080 ("восемьдесят восемьдесят ") - второй 8-битный микропроцессор, разработанный и произведенный Intel. Он впервые появился в апреле 1974 г. и представляет собой расширенный и улучшенный вариант более ранней конструкции 8008, хотя и без бинарной совместимости. Первоначально указанная тактовая частота или предел частоты составляли 2 МГц, и с общими инструкциями, использующими 4, 5, 7, 10 или 11 циклов, это означало, что он работал с типичной скоростью несколько сотен тысяч инструкций в секунду. Более быстрый вариант 8080A-1 (иногда называемый 8080B) стал доступен позже с ограничением тактовой частоты до 3,125 МГц.

Для работы в большинстве приложений 8080 требуется два вспомогательных чипа, тактовый генератор / драйвер i8224 и контроллер шины i8228, и это реализовано в логике металл-оксид-полупроводник N-типа (NMOS) с использованием ненасыщенных транзисторов режима расширения в качестве нагрузки, что требует напряжения +12 В и напряжения -5 В в дополнение к основной транзисторно-транзисторной логике (TTL) совместимый +5 В.

Хотя ранее микропроцессоры использовались для калькуляторов, кассовых аппаратов, компьютерных терминалов, промышленных роботов и других приложений, 8080 стал одним из первых широко распространенных микропроцессоров. Несколько факторов способствовали его популярности: его 40-контактный корпус упростил взаимодействие, чем 18-контактный 8008, а также сделал его шину данных более эффективной; его реализация NMOS дала ему более быстрые транзисторы, чем те из логики металл-оксид-полупроводник (PMOS) 8008 P-типа, а также упростил интерфейс, сделав его TTL-совместимым ; был доступен более широкий выбор микросхем поддержки; набор команд был улучшен по сравнению с 8008; а его полная 16-битная адресная шина (по сравнению с 14-битной у 8008) позволяла получить доступ к 64 КБ памяти, что в четыре раза больше, чем диапазон 8008 в 16 КБ. Он стал двигателем Altair 8800 и последующих персональных компьютеров S-100 bus, пока не был заменен на Z80 в этой роли, и был исходный целевой ЦП для операционных систем CP / M, разработанный Гэри Килдалл.

8080 был достаточно успешным, чтобы обеспечить совместимость перевода на уровне языка ассемблера стал обязательным требованием для Intel 8086, когда его разработка началась в 1976 году, и привела к тому, что 8080 напрямую повлиял на все более поздние варианты повсеместных 32-битных и 64-битных x86 архитектуры.

Содержание
  • 1 Описание
    • 1.1 Модель программирования
      • 1.1.1 Регистры
      • 1.1.2 Флаги
      • 1.1.3 Команды, инструкции
        • 1.1.3.1 8-битные инструкции
        • 1.1.3.2 16-битные операции
    • 1.2 Схема ввода / вывода
      • 1.2.1 Пространство порта ввода-вывода
      • 1.2.2 Отдельное пространство стека
    • 1.3 Слово внутреннего состояния
    • 1.4 Пример кода
    • 1.5 Использование выводов
  • 2 Поддержка микросхем
  • 3 Физическая реализация
  • 4 Промышленное влияние
    • 4.1 Приложения и преемники
    • 4.2 Изменения в отрасли
  • 5 История
    • 5.1 Патент
  • 6 Культурное влияние
  • 7 См. Также
  • 8 Ссылки
  • 9 Дополнительная литература
  • 10 Внешние ссылки
Описание

Модель программирования

Микроархитектура i8080
Регистры Intel 8080
5432109876543210(позиция бита)
Главные регистры .
AФлагиProgram S tatus W ord
BCB
DED
HLH(косвенный адрес)
Индексные регистры .
SPStack P ointer
Счетчик программ .
ПКPпрограмма C счетчик
Регистр состояния
S Z -AC -P -C Флаги

Intel 8080 т он преемник 8008. Он использует ту же базовую модель набора команд и регистров, что и 8008 (разработанный Computer Terminal Corporation ), хотя он не совместим с исходным кодом или двоичный код, совместимый со своим предшественником. Каждая инструкция в 8008 имеет эквивалентную инструкцию в 8080 (даже несмотря на то, что коды операций различаются между двумя процессорами). 8080 также добавляет несколько 16-битных операций в свой набор команд. В то время как 8008 требовал использования пары регистров HL для косвенного доступа к его 14-битному пространству памяти, 8080 добавил режимы адресации, чтобы обеспечить прямой доступ к его полному 16-битному пространству памяти. Кроме того, внутренний 7-уровневый выталкивающий вниз стек вызовов 8008 был заменен специальным 16-битным регистром указателя стека (SP). Большой 40-контактный DIP-корпус 8080 позволяет использовать 16-битную адресную шину и 8-битную шину данных, обеспечивая легкий доступ к 64 КиБ памяти.

Регистры

Процессор имеет семь 8-битных регистров (A, B, C, D, E, H и L), где A - первичный 8 -битовый аккумулятор, а остальные шесть регистров могут использоваться либо как отдельные 8-разрядные регистры, либо как три пары 16-разрядных регистров (BC, DE и HL, обозначаемые как B, D и H в документах Intel) в зависимости от конкретная инструкция. Некоторые инструкции также позволяют использовать регистровую пару HL в качестве (ограниченного) 16-битного накопителя, а псевдорегистр M можно использовать почти везде, где можно использовать любой другой регистр, ссылаясь на адрес памяти, на который указывает HL. пара. Он также имеет 16-битный указатель стека в память (заменяющий внутренний стек 8008) и 16-битный счетчик программ.

Флаги

Процессор поддерживает внутренние биты флага (регистр состояния ), которые указывают результаты арифметических и логических инструкций. Только определенные инструкции влияют на флаги. Флаги:

  • Знак (S), устанавливается, если результат отрицательный.
  • Ноль (Z), устанавливается, если результат равен нулю.
  • Четность (P), устанавливается, если число 1 бит в результате четное.
  • Перенести (C), устанавливается, если последняя операция сложения привела к переносу или если последняя операция вычитания потребовала заимствования
  • Вспомогательный перенос (AC или H), используется для двоично-десятичной арифметики (BCD).

Бит переноса может быть установлен или дополнен специальными инструкциями. Команды условного перехода проверяют различные биты состояния флагов. Флаги можно скопировать группой в аккумулятор. Аккумулятор A и флаги вместе называются регистром PSW или словом состояния программы.

Команды, инструкции

Как и во многих других 8-битных процессорах, для простоты все инструкции кодируются в одном байте (включая номера регистров, но исключая непосредственные данные). За некоторыми из них следует один или два байта данных, которые могут быть непосредственным операндом, адресом памяти или номером порта. Как и более крупные процессоры, он имеет автоматические инструкции CALL и RET для многоуровневого вызова и возврата процедур (которые могут даже выполняться условно, например переходы) и инструкции для сохранения и восстановления любой 16-битной пары регистров в машинном стеке. Также имеется восемь однобайтовых инструкций вызова (RST) для подпрограмм, расположенных по фиксированным адресам 00h, 08h, 10h,..., 38h. Они предназначены для предоставления внешним оборудованием для вызова соответствующей процедуры обслуживания прерывания , но также часто используются в качестве быстрых системных вызовов . Наиболее сложной командой является XTHL, которая используется для обмена регистровой пары HL со значением, хранящимся по адресу, указанному указателем стека.

8-битные инструкции

Большинство 8-битных операций могут выполняться только с 8-битным аккумулятором (регистр A). Для 8-битных операций с двумя операндами другой операнд может быть либо непосредственным значением, другим 8-битным регистром, либо байтом памяти, адресованным 16-битной парой регистров HL. Прямое копирование поддерживается между любыми двумя 8-битными регистрами и между любым 8-битным регистром и байтом памяти с адресом HL. Из-за регулярного кодирования инструкции MOV(с использованием четверти доступного пространства кода операции) существуют избыточные коды для копирования регистра в себя (например, MOV B, B), которые малопригодны, кроме задержек. Однако то, что было бы копией ячейки с адресом HL в себя (т. Е. MOV M, M), вместо этого используется для кодирования остановки (HLT ), останавливая выполнение до тех пор, пока не произойдет внешний сброс или прерывание.

16-битные операции

Хотя 8080 обычно является 8-битным процессором, он также имеет ограниченные возможности для выполнения 16-битных операций: любая из трех пар 16-битных регистров (BC, DE или HL, обозначаемые в документах Intel как B, D, H) или SP могут быть загружены с немедленным 16-битным значением (с использованием LXI), увеличенным или уменьшенным (с использованием INXи DCX) или добавлены в HL (с использованием DAD). Команда XCHGобменивает значения пар регистров HL и DE. Добавляя HL к самому себе, можно достичь того же результата, что и 16-битный арифметический сдвиг влево с помощью одной инструкции. Единственные 16-битные инструкции, которые влияют на любой флаг, - это DAD H / D / B, которые устанавливают флаг CY (перенос), чтобы обеспечить запрограммированную 24-битную или 32-битную арифметику (или больше), необходимое, например, для реализации арифметики с плавающей запятой.

Схема ввода / вывода

Пространство порта ввода / вывода

8080 поддерживает до 256 портов ввода / вывода (I / O), доступ к которым осуществляется через специальные инструкции ввода / вывода, принимающие адреса портов в качестве операндов. Эта схема отображения ввода-вывода рассматривается как преимущество, поскольку она освобождает ограниченное адресное пространство процессора. Вместо этого многие архитектуры ЦП используют так называемый ввод-вывод с отображением памяти (MMIO), в котором общее адресное пространство используется как для ОЗУ, так и для периферийных микросхем. Это устраняет необходимость в выделенных инструкциях ввода-вывода, хотя недостатком таких схем может быть то, что для вставки состояний ожидания необходимо использовать специальное оборудование, поскольку периферийные устройства часто работают медленнее, чем память. Однако в некоторых простых компьютерах 8080 адресация ввода-вывода действительно осуществляется так, как если бы они были ячейками памяти, «отображенными в память», оставляя команды ввода-вывода неиспользованными. Адресация ввода / вывода может также иногда использовать тот факт, что процессор выводит один и тот же 8-битный адрес порта как в младший, так и в старший байт адреса (т. Е. IN 05hпоместит адрес 0505h в 16 шина битового адреса). Подобные схемы портов ввода-вывода используются в обратно совместимых Zilog Z80 и Intel 8085, а также в близких семействах микропроцессоров x86.

Отдельное пространство стека

Один из битов в слове состояния процессора (см. Ниже) указывает, что процессор обращается к данным из стека. Используя этот сигнал, можно реализовать отдельное пространство памяти стека. Однако эта функция используется редко.

Слово внутреннего состояния

Для более продвинутых систем во время одной фазы своего рабочего цикла процессор устанавливает свой «байт внутреннего состояния» на шине данных. Этот байт содержит флаги, которые определяют, осуществляется ли доступ к памяти или порту ввода-вывода и нужно ли обрабатывать прерывание.

Состояние системы прерываний (включено или отключено) также выводится на отдельный вывод. Для простых систем, где прерывания не используются, можно встретить случаи, когда этот вывод используется как дополнительный однобитовый выходной порт (популярный компьютер Радио-86РК производства Советского Союза Союз, например).

Пример кода

Следующий исходный код 8080/8085 ассемблера предназначен для подпрограммы с именем memcpy, которая копирует блок байтов данных заданного размер от одного места до другого. Блок данных копируется по одному байту за раз, а логика перемещения данных и цикла использует 16-битные операции.

1000 1000 1000 78 1001 B1 1002 C8 1003 1A 1004 77 1005 13 1006 23 1007 0B 1008 78 1009 B1 100A C2 03 10 100D C9
; memcpy -; Скопируйте блок памяти из одного места в другое. ; ; Регистры входа; BC - количество байтов для копирования; DE - адрес блока исходных данных; HL - адрес целевого блока данных; ; Регистры возврата; BC - ноль org 1000h; происхождение в 1000h memcpy public mov a, b; копирование регистра B в регистр A или c; побитовое ИЛИ A и C в регистр A rz; возврат, если нулевой флаг установлен в высокий уровень. loop: ldax d; Загрузить A из адреса, указанного DE mov m, a; Сохранить A в адрес, указанный HL inx d; Увеличить DE inx h; Увеличить HL dcx b; Уменьшить BC (не влияет на флаги) mov a, b; Скопируйте B в A (чтобы сравнить BC с нулем) ora c; A = A | C (установить ноль) jnz loop; Перейти к 'loop:', если нулевой флаг не установлен. ret; Return

Использование вывода

Адресная шина имеет свои собственные 16 контактов, а шина данных имеет 8 контактов, которые можно использовать без какого-либо мультиплексирования. Используя два дополнительных контакта (сигналы чтения и записи), можно очень легко собрать простые микропроцессорные устройства. Только отдельное пространство ввода-вывода, прерывания и DMA требуют дополнительных микросхем для декодирования сигналов выводов процессора. Однако нагрузочная способность процессора ограничена, и даже простые компьютеры часто содержат шинные усилители.

Процессору требуются три источника питания (-5, +5 и +12 В) и два неперекрывающихся синхронизирующих сигнала большой амплитуды. Однако, по крайней мере, позднесоветская версия КР580ВМ80А могла работать с одним источником питания +5 В, при этом вывод +12 В был подключен к +5 В, а вывод −5 В - к земле. Процессор потребляет около 1,3 Вт энергии.

Таблица выводов из сопроводительной документации на микросхему описывает выводы следующим образом:

Номер выводаСигналТипКомментарий
1A10ВыходАдресная шина 10
2GNDЗемля
3D4ДвунаправленнаяДвунаправленная шина данных. Процессор также временно устанавливает здесь «состояние процессора», предоставляя информацию о том, что процессор в настоящее время делает:
  • Команда прерывания чтения D0. В ответ на сигнал прерывания процессор считывает и выполняет одну произвольную команду с поднятым флагом. Обычно поддерживающие микросхемы обеспечивают команду вызова подпрограммы (CALL или RST), передавая управление коду обработки прерывания.
  • чтение D1 (низкий уровень означает запись)
  • D2 доступа к стеку (возможно, отдельный объем памяти стека изначально планировался)
  • D3 ничего не делает, был остановлен инструкцией HLT
  • D4, записывающей данные в выходной порт
  • D5 чтение первого байта исполняемой инструкции
  • D6 чтение данных из порта ввода
  • D7 чтение данных из памяти
4D5
5D6
6D7
7D3
8D2
9D1
10D0
11−5 ВИсточник питания −5 В. Это должен быть первый источник питания, подключенный и последний отключенный, иначе процессор будет поврежден.
12СБРОСВходСброс. Сигнал заставляет выполнение команд, расположенных по адресу 0000. Содержимое других регистров процессора не изменяется. Это инвертирующий вход (активный уровень - логический 0)
13HOLDInputПрямой запрос доступа к памяти. Процессору предлагается переключить шину данных и адреса в высокоимпедансное («отключенное») состояние.
14INTВходЗапрос прерывания
15φ2ВходВторая фаза сигнала тактового генератора
16INTEВыходУ процессора есть две команды для установки уровня 0 или 1 на этом выводе. Вывод обычно предполагается использовать для управления прерываниями. Однако на простых компьютерах он иногда использовался как однобитовый выходной порт для различных целей.
17DBINВыходЧтение (процессор читает из памяти или порта ввода)
18WRВыходЗапись (процессор пишет в память или выходной порт). Это инвертированный выход, активный уровень - логический ноль.
19SYNCOutputАктивный уровень указывает, что процессор поместил «слово состояния» на шину данных. Различные биты этого слова состояния предоставляют дополнительную информацию для поддержки отдельных пространств адресов и памяти, прерываний и прямого доступа к памяти. Этот сигнал требуется для прохождения дополнительной логики, прежде чем его можно будет использовать для записи слова состояния процессора из шины данных в какой-либо внешний регистр, например, 8238 -Системный контроллер и драйвер шины.
20+5 ВИсточник питания + 5 В
21HLDAВыходПодтверждение прямого доступа к памяти. Процессор переключает контакты данных и адреса в состояние высокого импеданса, позволяя другому устройству манипулировать шиной
22φ1ВходПервая фаза сигнала тактового генератора
23READYВведитеПодождите. С помощью этого сигнала можно приостановить работу процессора. Он также используется для поддержки аппаратного пошагового режима отладки.
24WAITВыходОжидание (указывает, что процессор находится в состоянии ожидания)
25A0ВыходАдресная шина
26A1
27A2
2812 ВИсточник питания +12 В. Это должен быть последний подключенный и первый отключенный источник питания.
29A3ВыходАдресная шина; может переключаться в состояние с высоким сопротивлением по запросу
30A4
31A5
32A6
33A7
34A8
35A9
36A15
37A12
38A13
39A14
40A11
Поддержка микросхем

Ключевым фактором успеха 8080 стал широкий спектр доступных микросхем поддержки, обеспечивающих последовательную связь, счетчик / синхронизацию, ввод / вывод, прямой доступ к памяти и программируемые прерывания. управление среди других функций:

Физическая реализация

В интегральной схеме 8080 не используются -насыщенные затворы повышенной нагрузки nMOS, требующие дополнительных напряжений (для смещения затвор-нагрузка). Он был изготовлен по технологии кремниевого затвора с минимальным размером элемента 6 мкм. Один слой металла используется для соединения примерно 6000 транзисторов в конструкции, но более высокий слой сопротивления поликремния, который требует более высокое напряжение для некоторых межсоединений реализуется с помощью затворов транзисторов. Размер матрицы составляет приблизительно 20 мм.

Промышленное влияние

Приложения и последователи

8080 использовался во многих ранних микрокомпьютерах, таких как MITS Altair 8800 Computer, Процессорная технология SOL-20 Терминальный компьютер и IMSAI 8080 Микрокомпьютер, составляющие основу для машин, работающих под управлением операционной системы CP / M (позднее, почти полностью совместимый и более мощный, процессор Zilog Z80 извлечет выгоду из этого, при этом Z80 и CP / M станут доминирующей комбинацией ЦП и ОС в период с 1976 по 1983 год, как и x86 DOS для ПК десятилетие спустя).

Даже в 1979 году, после появления процессоров Z80 и 8085, пять производителей 8080 продавали примерно 500 000 единиц в месяц по цене от 3 до 4 долларов каждый.

Первые Одноплатные микрокомпьютеры, такие как MYCRO-1 и dyna-micro / MMD-1 (см.: Одноплатный компьютер ) были основаны на Intel 8080. Одно из первых применений 8080 было сделано в конце 1970-х годов компанией Cubic-Western Data из Сан-Диего, Калифорния, в ее автоматизированных системах оплаты проезда, специально разработанных для систем общественного транспорта по всему миру. На ранних этапах промышленного использования 8080 использовался в качестве «мозга» линейки продуктов DatagraphiX Auto-COM (Computer Output Microfiche), которая берет большие объемы пользовательских данных с катушки на катушку и отображает их на микрофишах. Инструменты Auto-COM также включают в себя целую автоматизированную подсистему резки, обработки, промывки и сушки пленки - настоящий подвиг как тогда, так и в 21 веке, и все это может быть успешно выполнено с помощью только 8-битного микропроцессора, работающего на тактовая частота менее 1 МГц с ограничением памяти 64 КБ. Кроме того, несколько ранних видео аркадных игр были построены на базе микропроцессора 8080, включая Space Invaders, одну из самых популярных аркадных игр, когда-либо созданных.

Вскоре после выпуска 8080 была представлена ​​конкурирующая конструкция Motorola 6800, а после этого - производная MOS Technology 6502, производная от 6800.

Zilog представил Z80, который имеет совместимый набор команд машинного языка и изначально использовал тот же язык ассемблера, что и 8080, но по юридическим причинам Zilog разработал синтаксически другой (но совместимый с кодом) альтернативный язык ассемблера для Z80. В Intel за 8080 последовал совместимый и более элегантный в электрическом отношении 8085.

Позже Intel выпустила совместимый с языком ассемблера (но не совместимый с двоичным кодом) 16-разрядный 8086, а затем 8 / 16-bit 8088, который был выбран IBM для своего нового PC, который будет выпущен в 1981 году. Позже NEC сделала NEC V20 (клон 8088 с совместимостью набора инструкций Intel 80186 ), который также поддерживает режим эмуляции 8080. Это также поддерживается NEC V30 (аналогично улучшенный клон 8086). Таким образом, 8080 через свою архитектуру набора команд (ISA) оказал длительное влияние на историю компьютера.

В Восточном блоке был произведен ряд процессоров, совместимых с Intel 8080A: KR580VM80A (первоначально обозначенный как KP580ИK80) в Советском Союзе, MCY7880 производства Unitra CEMI в Польше, MHB8080A производства TESLA в Чехословакии, 8080APC производства Tungsram / MEV в Венгрии и MMN8080 производства Microelectronica Bucharest в Румынии.

По состоянию на 2017 год 8080 все еще производится в Lansdale Semiconductors.

Изменение отрасли

Модель 8080 также изменила способ создания компьютеров. Когда был представлен 8080, компьютерные системы обычно создавались такими производителями компьютеров, как Digital Equipment Corporation, Hewlett Packard или IBM. Производитель будет производить весь компьютер, включая процессор, терминалы и системное программное обеспечение, такое как компиляторы и операционную систему. 8080 был разработан почти для любого приложения, кроме полной компьютерной системы. Компания Hewlett Packard разработала серию интеллектуальных терминалов HP 2640 на основе 8080. HP 2647 - это терминал, который запускает язык программирования BASIC на 8080. Microsoft будет продавать в качестве основного продукта первый популярный язык для 8080, а позже приобретет DOS для IBM PC.

8080 и 8085 дал начало 8086, который был разработан как совместимое с исходным кодом (хотя и не двоичное совместимое ) расширение 8085. Этот дизайн, в свою очередь, позже породил x86 семейство микросхем, являющееся основой большинства используемых сегодня процессоров. Многие из основных машинных инструкций и концепций 8080, например регистры с именами A, B, C и D, а также многие флаги, используемые для управления условными переходами, все еще используются в широко распространенной платформе x86. Ассемблерный код 8080 по-прежнему можно напрямую транслировать в инструкции x86; все его основные элементы все еще присутствуют.

История

Федерико Фаггин, создатель архитектуры 8080 в начале 1972 года, предложил ее руководству Intel и настаивал на ее реализации. Через полгода он наконец получил разрешение на его разработку. Фаггин нанял Масатоши Шима из Японии в ноябре 1972 года, который выполнил детальное проектирование под своим руководством, используя методологию проектирования для случайной логики с кремниевым вентилем, которую Фаггин разработал для семейства 4000. Стэнли Мазор добавил пару инструкций в набор инструкций.

Шима закончил компоновку в августе 1973 года. После регулирования производства NMOS в январе 1974 года был завершен прототип 8080. У него был недостаток, заключающийся в том, что управление стандартными устройствами TTL увеличивало напряжение заземления из-за высокого ток тек в узкую линию. Тем не менее, Intel уже произвела 40 000 единиц 8080 по указанию отдела продаж, прежде чем Шима охарактеризовал прототип. Он был выпущен как требующий маломощных устройств Schottky TTL (LS TTL). В 8080A этот недостаток исправлен.

Intel предложила имитатор набора команд для 8080 под названием INTERP / 80. Его написал Гэри Килдалл, когда он работал консультантом в Intel.

Патент

Культурное влияние
  • Астероид 8080 Intel назван каламбуром и хвала названию Intel 8080.
  • Опубликованный номер телефона Microsoft, 425-882-8080, был выбран, потому что очень много ранних работ было сделано над этим чипом.
  • Многие из основных телефонных номеров Intel также принимают аналогичную форму: xxx-xxx-8080
См. также
Ссылки
Далее чтение
  • Программирование на языке ассемблера 8080A / 8085; 1-е изд; Лэнс Левенталь; Адам Осборн и партнеры; 495 страниц; 1978. (архив)
  • Язык ассемблера 8080 / Z80 - методы улучшенного программирования; 1-е изд; Алан Миллер; Джон Уайли и сыновья; 332 страницы; 1981; ISBN 978-0471081241. (архив)
  • Методы взаимодействия с микропроцессором; 3-е изд; Родней Закс и Остин Лизи; Sybex; 466 страниц; 1979; ISBN 978-0-89588-029-1. (архив)
  • Программирование на языках ассемблера Z80 и 8080; 1-е изд; Кейт Спраклен; Хайден; 180 страниц; 1979; ISBN 978-0810451674. (архив)
Внешние ссылки
Последняя правка сделана 2021-05-24 03:56:32
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте