Команда CWD


Лучшие книги по Ассемблеру Лучшие книги по Ассемблеру

Сделал подборку не новых, но проверенных книг по программированию на языке ассемблера. Если вы также как и я любите погружаться на низкий уровень, в те закоулки мира программирования, куда не всем путь открыт, то посмотрите. Возможно, что-то вам понравится. Подробнее...

Команда CWD в Ассемблере выполняет преобразование слова в двойное слово. Синтаксис:

CWD

Слово, которое находится в регистре АХ, будет преобразовано в двойное слово и помещено в пару регистров DX (старшее слово) и AX (младшее слово). Значение регистра АХ при этом не изменяется.

Алгоритм:

  • Если старший бит АХ равен 1 (число отрицательное), то в DX записать 65535 (FFFF)
  • Иначе в DX записать 0

Команда не имеет операндов и никакие флаги при выполнении команды не изменяются.

По сути команда переносит знак числа из старшего разряда слова в старший разряд двойного слова. То есть она имеет смысл только для отрицательных чисел. Обычно используется при работе с большими числами, например, при делении целых чисел.

Пример на ассемблере:

  .model	tiny
  .code
  ORG 	100h
	
start:	
                                   
  MOV  AX,  100 
  CWD           ; DX = 0  
  
  MOV  AX,  -100 
  CWD           ; DX = 65535 (FFFF)
 	
  RET           ; Выйти из программы
	
  END start

Напоследок, как всегда, о происхождении аббревиатуры CWD.

CWD - это Convert Word to Doubleword (преобразовать слово в двойное слово).



Первые шаги в программирование Первые шаги в программирование

Главный вопрос начинающего программиста – с чего начать? Вроде бы есть желание, но иногда «не знаешь, как начать думать, чтобы до такого додуматься». У человека, который никогда не имел дело с информационными технологиями, даже простые вопросы могут вызвать большие трудности и отнять много времени на решение. Подробнее...

Инфо-МАСТЕР ®
Все права защищены ©
e-mail: mail@info-master.su