Программирование на JAVA

отрицательно". Причина заключается в том, что 80H или двоичное 1000 0000 является отрицательным числом. Таким образом, вместо + 128 сумма равна -128. Так как регистр AL слишком мал для такой операции, следует воспользоваться регистром AX. В следующем примере команда CBW (Convert Byte to Word - преобразовать байт в слово) преобразует 60Н в регистре AL в 0060Н в регистре AX, передавая при этом знаковый бит (0) через регистр АН. Команда ADD генерирует теперь в регистре AX правильный результат: 0080Н, или +128:

CBW                                                                 ; Расширение AL до AX

ADD       AX, 20Н                                ;Прибавить к AX

Но полное слово имеет также ограничение: один знаковый бит и 15 бит данных, что соответствует значениям от -32768 до + 32767. Рассмотрим далее, как можно обрабатывать числа, превышающие эти пределы. Многословное сложение

Максимально возможное значение в регистре + 32767 ограничивает возможности   компьютера   для   выполнения   арифметических операций. Рассмотрим два способа представления арифметических операций. Первый способ более прост, но специфичен, второй— сложнее, но имеет общий характер.


<< назад вперед >>