Добрый час, Ваши лекции очень познавательные, не могли бы Вы сделать лекцию в плане практического программного применения, на языке ассемблер, конвертирования дробных десятичных в двоичные и обратно. Детально разобраться в коде, просто копировать нет желания хочется понять. Как отделяется целая часть от дробной программно. Не получается сохранять в память температуру до десятых. Спасибо большое за Ваш труд.
Здравствуйте.Извиняюсь я не понял результат сложения на 8:00-8:03 минутах.Нули с нулями дают нули-понял,нули с единицами дают единицы-понял.Но почему в результате сложения нулевых битов 1+1=0, а первых битов 0+0=1.Если кому не трудно растолкуйте пожалуйста.Спасибо.
а каким образом реализуется вычитание большего числа из меньшего так чтобы на выходе сумматора было отрицательное число , как будет выглядеть логическая схема в данном случае?? т.е как схема будет определять то что вычитаемое больше уменьшаемого и результат будет отрицательным?
Схема просто сложит числа как обычно, ничего не зная об их отрицательности. Однако, микропроцессор имеет регистр флагов, в котором, кроме прочих, есть флаг знака, который указывает, как интерпретировать операнд для текущей операции и результат. И потом уже на уровне программного обеспечения будет приниматься решение, учитывать флаг знака или нет.
Снимаю перед вами шляпу , спасибо вам большое. Однако у меня есть вопрос , вот вы получили -у (11110110) и как мне его отличить от положительного числа с таким же набором единиц и нулей ? Я даже в калькулятор вбил это двоичное число и оно равно 246 , хотя у вас -у , то есть -10. Как тут быть гражданин лектор? Заранее благодарю за ответ.
Байт - это просто набор 1 и 0 битов. Число из байта - это наша трактовка этого набора. Если мы считаем что число может быть отрицательным, то старший бит определяет его знак, а если мы думаем, что в байте может быть только положительное число, то старший бит берем с положительным весом. Т.о. , мы считаем, что 11110110 = -10 в первом случае или 246 во втором случае
Это в зависимости как вы заранее условитесь, будут ли у вас со знаком минус или без, то есть положительное число. Если без знака то те же 8 бит попадают в диапазон от 0 до 255, если со знаком то от -128 до 127 и все отрицательные числа до нуля будут начинаться с единицы а положительные соответственно с нуля.
Показанная вами схема для получения дополнительного кода - не совсем рациональна для вычитания. Зачем прибавлять единицу здесь? Если вам нужно вычислить X - Y, то в сумматор Y протаскиваете инверсию, X напрямую, а единицу делаете за счет того, что вместо земли к переносу младшего байта даете сигнал. Разве не замечательно?))) И тогда нам не придется выполнять дополнительный такт, и тогда у нас вычитание выполняется также быстро, как и сложение.
Исповедуйтесь, Причащайтесь, ходите в Храм и беседуйте со священником, молитесь чаще и ходите на Литургию, творите добро, воздерживайтесь от грехов и кайтесь. ➡️поделитесь этим советом со всеми, так вы помогаете проповеди Православной Веры! Спаси Господи
Боже, спасибо Вам не могла понять это вообще, в интернете все какое-то не понятное. Просто спасли!!! Удачи Вам
гениальное объяснение
от всей души Вам спасибо
Это дар! Спасибо!
Спасибо большое, теперь эта тема ясна
Спасибо вам! Понял как составлять доп код
Жирный лайк, отличный подход!
классная прическа
спасибо большое
все очень понятно объясняете
Спасибо большое! очень доходчиво
Лучший лектор, спасибо Вам.
Огромное спасибо! ОЧЕНЬ внятно!
спасибо Вам =) теперь всё понятно
отличная лекция
Придумано
умножить на отрицательную единицу ; выражение
Спасибо !!
Большое спасибо!
Супер, спасибо!
5:24 "Прибавляеться единичка в младшем бите" ►Потому что положительные числа считаються с нуля
Круто, Спасибо=)!
В паскале var x: integer; // -32768 ... 32767. И не только, кстати, в паскале. Любое знаковое целое размером 16 битов.
Макс Ф. Тоже обратил на это внимание, начал проверять в комментах, может я ошибался. Но нет.
Добрый час, Ваши лекции очень познавательные, не могли бы Вы сделать лекцию в плане практического программного применения, на языке ассемблер, конвертирования дробных десятичных в двоичные и обратно.
Детально разобраться в коде, просто копировать нет желания хочется понять.
Как отделяется целая часть от дробной программно.
Не получается сохранять в память температуру до десятых.
Спасибо большое за Ваш труд.
Можно лекцию по Асинхронному счетчику
Интересно советские простые калькуляторы 10 числа в двоичный код переводили или напрямую с 10 чными числами работали ?
Эх, теперь бы это все да в код на си... и был бы курсач готов :(
Здравствуйте.Извиняюсь я не понял результат сложения на 8:00-8:03 минутах.Нули с нулями дают нули-понял,нули с единицами дают единицы-понял.Но почему в результате сложения нулевых битов 1+1=0, а первых битов 0+0=1.Если кому не трудно растолкуйте пожалуйста.Спасибо.
Переполнение в разряде (5+5 в 10-тичной или 1+1 в двоичной) дает смещение в старший разряд.
Не смещение, а перенос.
Кстати, для иллюстрации допкода можно сначала показывать как он работает в десятичной системе.
+Roupreht Хз, по-моему, в двоичной системе гораздо нагляднее.
0:44.. справа налево...
а каким образом реализуется вычитание большего числа из меньшего так чтобы на выходе сумматора было отрицательное число , как будет выглядеть логическая схема в данном случае?? т.е как схема будет определять то что вычитаемое больше уменьшаемого и результат будет отрицательным?
Схема просто сложит числа как обычно, ничего не зная об их отрицательности. Однако, микропроцессор имеет регистр флагов, в котором, кроме прочих, есть флаг знака, который указывает, как интерпретировать операнд для текущей операции и результат. И потом уже на уровне программного обеспечения будет приниматься решение, учитывать флаг знака или нет.
Снимаю перед вами шляпу , спасибо вам большое. Однако у меня есть вопрос , вот вы получили -у (11110110) и как мне его отличить от положительного числа с таким же набором единиц и нулей ? Я даже в калькулятор вбил это двоичное число и оно равно 246 , хотя у вас -у , то есть -10. Как тут быть гражданин лектор? Заранее благодарю за ответ.
Байт - это просто набор 1 и 0 битов. Число из байта - это наша трактовка этого набора. Если мы считаем что число может быть отрицательным, то старший бит определяет его знак, а если мы думаем, что в байте может быть только положительное число, то старший бит берем с положительным весом.
Т.о. , мы считаем, что 11110110 = -10 в первом случае или 246 во втором случае
Это в зависимости как вы заранее условитесь, будут ли у вас со знаком минус или без, то есть положительное число. Если без знака то те же 8 бит попадают в диапазон от 0 до 255, если со знаком то от -128 до 127 и все отрицательные числа до нуля будут начинаться с единицы а положительные соответственно с нуля.
@@Zefar91 мне єтот коментарий рассказал всю суть лекции, во время лекции ничерта не понял, а здесь стукнуло сразу в голову данньіе
Двухбайтный int или short все же от -32768 до 32767
Peter Dubenkoff й
Implementation defined. На разных архитектурах, языках и ОС по-разному.
Показанная вами схема для получения дополнительного кода - не совсем рациональна для вычитания. Зачем прибавлять единицу здесь? Если вам нужно вычислить X - Y, то в сумматор Y протаскиваете инверсию, X напрямую, а единицу делаете за счет того, что вместо земли к переносу младшего байта даете сигнал. Разве не замечательно?))) И тогда нам не придется выполнять дополнительный такт, и тогда у нас вычитание выполняется также быстро, как и сложение.
После прибавления 1 к обратном коду: вот это будет минус y
Исповедуйтесь, Причащайтесь, ходите в Храм и беседуйте со священником, молитесь чаще и ходите на Литургию, творите добро, воздерживайтесь от грехов и кайтесь. ➡️поделитесь этим советом со всеми, так вы помогаете проповеди Православной Веры! Спаси Господи
Почему у вас стоит Россия если вы в Приднестровье ? Тем более вуз ваш имени русофоба!
Спасибо большое!