Nicron #15
10 января 1997
  Железо  

Железо - обзор микропроцессора Zilog Z380, продолжение.


Аппаратное обеспечениеОбучение и справочные материалыОписание логических микросхем и микропроцессоров

╔══════════════════════════════════════════════════════════════╗
║▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒░ MPU Z380 ░▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒║
╚══════════════════════════════════════════════════════════════╝
[ Продолжение. Предыдущие публикации - в номерах 14,12,11,10,
9,8,7 ].

(C) WLODEK BLACK.

       	Группа инструкций умножения и деления.

Мнемоника		Смысл		Комментарий

MLT dd		dd <- ddH*ddL		"dd" - пара регистров.
					Результат умножения мла-
MLT BC					дшего и старшего байтов
MLT DE					помещается в ту же пару.
MLT HL
MLT SP

Команда MLT является заимствованной из системы команд Z180 (для
совместимости). Она не влияет на флаги (!).

MULTW [HL,]pp	HL(31-0) <- HL(15-0)*pp(15-0)
					Умножение слов.
					"pp" - пара регистров.

MULTW [HL,]XY	HL(31-0) <- HL(15-0)*XY(15-0)
					"XY" - IX или IY.

MULTW [HL,]nn	HL(31-0) <- HL(15-0)*nn	"nn" - непосредственная
					константа-слово (которая
		может быть расширена  до 24 или 32 бит с помощью
		DDIR).

MULTW (XY+d)	HL(31-0) <- HL(15-0)*(XY+d)
					Умножение 16-разрядного
		значения пары HL на слово (!) с адреса (XY+d),
		где "d" - смещение - может  быть  расширено  до
		слова или 24-битного значения через DDIR.

MULTUW uu	HL(31-0) <- HL(15-0)*uu	"uu" - pp,nn,XY,(nn),
					(XY+d). Разновидность
		команды умножения с любым способом адресации.
		Выполняется на один такт дольше по сравнению
		с MULTW.

Команды умножения воздействуют на флаги S,Z,C. Флаг P/V=0.

DIVUV [HL,]pp	HL(15-0)  <- HL(31-0)/pp;	Деление 32-раз-
		HL(31-16) <- остаток		рядного значения
						HL на 16-разряд-
		ное значение пары.  Остаток заносится в старшую
		половину 32-разрядной пары HL.

DIVUW [HL,]XY	HL(15-0)  <- HL(31-0)/XY;	То же для
		HL(31-16) <- остаток.		IX, IY.

DIVUW [HL,]nn	HL(15-0)  <- HL(31-0)/nn;	Деление
		HL(31-16) <- остаток.		на константу.
						Константа может
		быть расширена до 24-х или 32-х бит через DDIR.

DIVUW [HL,](XY+d)
		HL(15-0)  <- HL(31-0)/(XY+d);	Деление 32-разр.
		HL(31-16) <- остаток.		HL на слово (!)
						с адреса (XY+d).
		Смещение "d" может быть расширено  до 16 или 24
		бит с помощью DDIR.

Влияние команд деления на флаги:
S=0; Z - по результату; P/V - "V" по результату. CY не меняется.

	Группа команд 8-разрядных сдвигов.

В ней не прибавилось ни одной новой команды.  Единственное отли-
чие - возможность расширения смещения  "d"  до 16 или 24 бит  в
командах с адресацией по (XY+d). И еще: не пройдет номер с левы-
ми командами наподобие RL (IX+d),r (сдвиг в ячейке памяти  с од-
новременной пересылкой результата в регистр) - эти коды  заняты
другими командами.

	Группа команд 16- и 32-разрядных сдвигов.

RLCW pp		Как RLC, только для пары.

RLCW XY		То же для IX, IY.

RLCW (HL)	Сдвиг слова (!) по адресу (HL).

RLCW (XY+d)	Сдвиг слова (!) по адресу (XY+d).
		"d" может быть расширено через DDIR.

RLW		То же, что аналогичные инструкции Z80,
RRCW		только для операнда формата слово.
RRW
SLAW
SRAW
SRLW

Влияние на флаги аналогично соответствующим инструкциям Z80.

	Группа команд работы с отдельными битами.

SET
RES
BIT

Здесь все по-прежнему. Команды работают с теми же 8-битными опе-
рандами, как и в прототипе. Единственное отличие - в  операциях
с адресацией по (XY+d) смещение "d" может быть расширено до  16
или 24 бит с помощью DDIR. Группы команд 16-разрядной работы  с
отдельными битами не существует.

[ Продолжение следует ].




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Железо - Сообщение от фирмы Nemo (о микропроцессорах Z84C0010PEC).
ZILOG - Три поколения архитектуры Z80 от ZILOG.
Печатается с продолж. - ZILOG - основные сведения о процессорах.

В этот день...   14 ноября