На головну

Розширення байта до слова (convert byte to word): CBW

  1. В останні роки розширення сфери форфейтингових послуг в країнах з розвиненою ринковою економікою йшло по лінії інвестицій у форфейтинговие активи.
  2. Варикозне розширення вен нижніх кінцівок (симптоми, перша допомога, лікування, ускладнення).
  3. Питання 39. РФ і Євросоюз. Розширення Євросоюзу.
  4. Для забезпечення можливості пересилання довільних даних розроблено багатоцільове розширення електронної пошти MIME;
  5. Для програмування скопіюйте в блокнот і збережіть з розширенням .HEX
  6. Документ створений в MS Power Point має розширення
  7. Касим-хан. Піднесення ханства. Розширення території.

У цій команди місцезнаходження операнда і результату фіксоване: операнд завжди береться з AL, а результат завжди записується в АХ. Команда записує в регістр АН число 00h або 0FFh в залежності від знака числа з регістра AL:

 Прапори ця команда не змінює.

приклади:

MOV AL, 32; AL = 20h

CBW; AX = 0020h (число +32 як слово)

MOV АL, -32; AL = 0E0h

CBW; AX = 0FFE0h (число -32 як слово)

Тепер повернемося до нашого завдання - до складання BX: = BX + AL. Залежно від того, як трактуються числа - як беззнакові або як знакові, вона виконується в такий спосіб:

; числа без знака:

MOV АН, 0; AL -> АХ (розширення без знака)

ADD ВХ, АХ

; числа зі знаком:

CBW; AL -> АХ (розширення зі знаком)

ADD BX, AX

Необхідність розширення байта до слова найчастіше виникає при розподілі байтів. Нагадаємо, що в ПК можна ділити слово на байт, але не байт на байт, тому, якщо ми хочемо все ж розділити байт на байт, то нам перш за все треба перший байт (ділене) розширити до слова. А як це робиться, ми тільки що розглянули. Наприклад, присвоювання AL: = AL div CH реалізується так:

; числа без знака:

MOV АН, 0; AL -> АХ (без знака)

DIV CH; AL: = AX div CH (АН: = АХ mod CH)

; числа зі знаком:

CBW; AL -> АХ (зі знаком)

IDIV CH; AL: = A div CH (АН: = АХ mod CH)

Ми розглянули випадок розширення байта до слова. Аналогічно здійснюється розширення слова до подвійного слова, необхідність в якому також виникає при розподілі. Зазвичай доводиться розширювати слово, яке перебуває в регістрі АХ, до подвійного слова, що займає два регістри - DX і АХ, за умови, що в DX знаходиться старша частина числа, а в АХ - молодша:

АХ -> (DX, AX)

При цьому умови розширення беззнакового числа АХ реалізується засиланням 0 в регістр DX:

MOV DX, 0; АХ -> (DX, AX) (без знака)

Якщо ж число АХ розглядається як знакова, тоді для його розширення треба в регістр DX записати 0000h, якщо число невід'ємне, або 0FFFFh, якщо число негативно. Для цього в системі команд ПК є спеціальна команда:



Зміна розміру числа | Заперечення: NOT ор

Особливості складання чисел в зворотному і додатковому кодах. | Числа з фіксованою точкою. | Числа з плаваючою точкою. | Арифметичні операції над числами з фіксованою точкою | Арифметичні операції над двійковими числами з плаваючою точкою | Множення двійкових чисел | Склад обладнання | Визначення обсягу оперативної пам'яті | Команди додавання і віднімання | команди множення |

© um.co.ua - учбові матеріали та реферати