Числа со знаком и без - Assembler
Формулировка задачи:
Пожалуйста вразумите, никак не могу понять, относительно чисел со знаком и без.
В учебниках написано, что числа со знаком в старшем бите имеют 0-если число положительное и 1-если отрицательное.
Но никак не пойму, как процессор может отличить два числа, напр. 251 = 11111011 и -5 = 11111011
В двоичном коде эти два числа абсолютно совпадают, у обоих старший бит равен 1.
Но как процессор понимает, что это -5 а не 251 или наоборот, что это 251 а не -5.
Я знаю что у положительного числа делают инверсию бит и прибавляют 1, чтобы получить отрицательное значение.
Но как процессор понимает, что нужна инверсия бит или что она уже была, в двоичном то коде оба числа одинаковы ))
В языке Си этому служат директивы signed и unsigned, а в Assemblre ?????
Решение задачи: «Числа со знаком и без»
textual
Листинг программы
mov ax, 0009 add ax, FFFB
Объяснение кода листинга программы
- mov ax, 0009 - Переменная
ax
содержит число 9 - add ax, FFFB - К числу 9 добавляется значение переменной
FFFB
, равное -5 - Результат вычисления -5 + 9 = 4
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д