Как компьютер добавляет 2 номера на самом низком уровне?
262
Simon
Большинство адресов памяти содержат только 8 бит (1 байт). Это означает, что он может содержать число до 255.
Что, если я хотел сохранить 511? Я хотел бы использовать 2 адреса памяти и хранить его так
00000001 11111111
Но если у моей программы был такой код операции, как ADD. Как он интерпретирует эти 2 адреса памяти как одно значение?
Если бы я добавил его в регистр, он бы добавил 1 + 255, что составляет 256.
Как это сделать?
[so] дубликат: [Как я могу добавить два 16-битных числа на ассемблере в микропроцессоре 8086] (http://stackoverflow.com/q/23180532)
DavidPostill 8 лет назад
1
[Операции сложения Multiprecision] (https://courses.engr.illinois.edu/ece390/books/artofasm/CH09/CH09-3.html)
DavidPostill 8 лет назад
2
В ситуации, которую вы цитируете (инструкция, которая обрабатывает значение, превышающее собственный размер WORD платформы), инструкция должна установить флаг переполнения операции. https://en.wikipedia.org/wiki/Overflow_flag
Frank Thomas 8 лет назад
0
0 ответов на вопрос
Похожие вопросы
-
5
Могу ли я использовать что-то вроде команды SSD TRIM на SD-карте?
-
4
Какова максимальная адресуемая память?
-
1
IDE для сборки на Pendrive
-
-
1
linux и сборка - блокировка
-
1
Как назначить строгое имя для сборки?
-
1
Windows -> Папка сборки типичный размер: он же GAC
-
3
Насколько распространены старые процессоры x64 без инструкции cmpxchg16b?
-
2
Исправить SD-карту, которая сообщает о слишком большом размере?
-
4
Скорость электричества и передачи данных
-
2
Понимание кодировки инструкций 8086