Команды CBW, CWD, CWDE и CDQ используются для расширения размерности числа с учетом знака. Команда CBW (Convert Byte to Word) расширяет байт до слова. Команда CWD (Convert Word to Double) расширяет слово до двойного слова. И наконец команда CDQ (Convert Double to Quad) расширяет двойное слово до четверного слова.

 

Команда CBW
Синтаксис: CBW
Операнды: Нет
Назначение: Преобразование байта в слово
Процессор: 8086+
Флаги: Не изменяются
Комментарий: Команда CBW преобразовывает имеющий знак байт в регистре AL в имеющее знак слово в регистре AX путем расширения старшего бита регистра AL (бита знака) на все биты регистра AH.
Ограничения: Нет
Примеры:
mov	ax,1124h
cbw			;AX=0024h
Команда CWD
Синтаксис: CWD
Операнды: Нет
Назначение: Преобразование слова в двойное слово
Процессор: 8086+
Флаги: Не изменяются
Комментарий: Команда CWD преобразовывает имеющее знак слово в регистре AX в имеющее знак двойное слово в паре регистров DX:AX путем расширения старшего бита регистра AX (бита знака) на все биты регистра DX.
Ограничения: Нет
Примеры:
mov	ax,-134
cwd			;DX:AX=FFFFFF7Ah
Команда CWDE
Синтаксис: CWDE
Операнды: Нет
Назначение: Преобразование слова в двойное слово
Процессор: 80386+
Флаги: Не изменяются
Комментарий: Команда CWDE преобразовывает имеющее знак слово в регистре AX в имеющее знак двойное слово в регистре EAX путем расширения старшего бита регистра AX (бита знака) на два старших байта регистра EAX.
Ограничения: Нет
Примеры:
mov	ax,40h
cwde			;EAX=00000040h
Команда CDQ
Синтаксис: CDQ
Операнды: Нет
Назначение: Преобразование двойного слова в 8-байтовое значение
Процессор: 80386+
Флаги: Не изменяются
Комментарий: Команда CDQ преобразовывает имеющее знак двойное слово в регистре EAX в имеющее знак 8-байтовое значение в паре регистров EDX:EAX путем расширения старшего бита регистра EAX (бита знака) на регистр EDX.
Ограничения: Нет
Примеры:
mov	eax,34h
cdq			;EDX:EAX=0000000000000034h