|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
12.11.2011, 14:35 | #1 |
Новичок
Джуниор
Регистрация: 12.11.2011
Сообщений: 1
|
Двоичная арифметика
Я начал самостоятельно изучать ассемблер. И первая тема – это двоичное сложение. Вроде бы всё понятно, но везде пишется, что для определения отрицательного числа старший бит должен быть единицей. Но при инвертации 64 всё получается а при 251 например неполучается!!! Если кто знает, объясните пожалуйста новичку?
|
12.11.2011, 15:33 | #2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
начнем по порядку:
1. в каком виде вы будете представлять отрицательные числа? доп., обратном,... ? 2. какой разрядности у вас число? |
14.11.2011, 04:12 | #3 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
5926811
Читай внимательно учебник: 1) беззнаковые числа размером в байт -- величина от 0 до 255 2) знаковые числа размером в байт -- величина от -128 до 127 Поэтому число 64=40h можно сделать отрицательным -64=C0h, а 251=FBh=-5 не получится -- оно и так отрицательное 64+(-64)=40h+C0h=(1)00h ноль и перенос 251+5=FBh+5=(1)00h ноль и перенос Последний раз редактировалось Mikl___; 14.11.2011 в 11:46. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Двоичная арифметика | nikozavr | C# (си шарп) | 16 | 18.05.2011 14:05 |
двоичная арифметика | Gen_r_questions | PHP | 9 | 13.04.2011 20:52 |
Двоичная арифметика | Molotok | Помощь студентам | 0 | 26.12.2010 11:27 |
Двоичная арифметика | lilised | Помощь студентам | 0 | 02.12.2010 19:09 |
Двоичная арифметика | mizantrop32 | Общие вопросы C/C++ | 1 | 03.11.2010 16:25 |