М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
typaydevochka
typaydevochka
05.01.2022 00:48 •  Информатика

Реализация конструкции цикла do while на языке ассемблера. Составьте программу, которая вычисляет сумму чисел от 100 до 200, кратных 7.

👇
Ответ:
oliaputliar
oliaputliar
05.01.2022

Немного о полученном коде.

Так как из реализации на C++ можно узнать, что ответ 2107 - очевидно, ответ не помещается в 2 байта, поэтому будет хранить его в двух регистрах: R1 и R2, соответственно старшие и младшие байты.Сначала делим текущее значение числа k на 7 (команда DIV AB), если остаток нулевой, добавляем к младшим байтам текущее число и при наличии бита переноса увеличиваем старшие байты.После этого проверяем, не равно ли текущее значение двумстам, если это так - завершаем программу, иначе увеличиваем это значение и возвращаемся в начало "цикла".

В приложении смотри:

непосредственно код программы на Ассемблере (37783247.asm.txt),скриншот кода на Ассемблере и значения, хранящиеся в регистрах в результате выполнения,соответствующий код на плюсах и результат выполнения,на засыпку, результат конвертации числа 2107 из десятичной в 16-чную систему :)
Реализация конструкции цикла do while на языке ассемблера. Составьте программу, которая вычисляет су
4,7(62 оценок)
Открыть все ответы
Ответ:
nike1110
nike1110
05.01.2022
*переводим большую единицу (Гб) в меньшую (Мб)*
Что бы это сделать нужно 40 Гб * 1024
Но так как мы знаем что 1024 это 2^10, то получаться что 40Гб= 40* 2^10Мб
чтобы найти кол-во дисков 
Нужно объем информации разделить (40 * 2^10) на объем дика (600)
(40*2^10) \ (600) = (5*2^3*2^10) \ (75*2^3) *сокращаем 2^3* =
=(5*2^10) \ (75) *возводим 2 в 10 степень и умножаем на 5* =
=5120 \ 75 =68,2666... *округляем в большую сторону, т.к по условию задачи дано что информация должна занимать полностью диск*
ОТВЕТ : 69

**справка* степени 2*
2^1=2
2^2=4
2^3=8
2^4=16
2^5=32
2^6=64
2^7=128
2^8=256
2^9=512
2^10=1024
4,6(61 оценок)
Ответ:
kense
kense
05.01.2022
*переводим большую единицу (Гб) в меньшую (Мб)*
Что бы это сделать нужно 40 Гб * 1024
Но так как мы знаем что 1024 это 2^10, то получаться что 40Гб= 40* 2^10Мб
чтобы найти кол-во дисков 
Нужно объем информации разделить (40 * 2^10) на объем дика (600)
(40*2^10) \ (600) = (5*2^3*2^10) \ (75*2^3) *сокращаем 2^3* =
=(5*2^10) \ (75) *возводим 2 в 10 степень и умножаем на 5* =
=5120 \ 75 =68,2666... *округляем в большую сторону, т.к по условию задачи дано что информация должна занимать полностью диск*
ОТВЕТ : 69

**справка* степени 2*
2^1=2
2^2=4
2^3=8
2^4=16
2^5=32
2^6=64
2^7=128
2^8=256
2^9=512
2^10=1024
4,7(99 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ