Охуенные погромисты дайте алгоритм, уже второй день залипаюимеем 8 регистров, 4 порта, основной аккум и дополнительныйпопытки делить эту хероту на #10000000, сравнивать и декрементировать нихuja не дали
бамп 1/10
>>141936029 (OP)А входные данные какие?
>>141936728так 11111111 на первом порете p1 и есть
>>141936029 (OP)А оно точно решаемо?
>>141940186хз, а чому нет
>>141940281Разнеси эти единицы по регистрам, а потом сравнивай регистры между собой.
>>141940386а как разнести то? делим на 10000000 - получаем 1 (в десятичной 1)делим на 1000000 получаем уже 11 (в десятичной 3)делим на 100000 получаем 111 (в десятичной 7)или тип аккум двигать ?
>>141940553Ну бля смотри, 1 1 1 1 делишь на 1000, получаешь 1, результат кидаешь в другой регистр, остаток от деления оставляешь в этом. Потом 111 (это остаток от деления) делишь на 100 уже (тут надо придумать как уменьшать делитель). И так далее. С восемью разрядами тоже самое.
Пишем прогу на любом языке программированияСмотрим в ассемблерProfit
>>141940772в ассемблере нет команды остаток от деления mod, только divкак уменьшать делитель понятноа как остаток от деления хз вообще
>>141941154Остаток от деления обычно закидывается в какой-то регистр автоматически. Какая ЭВМ вообще? Какая система команд? Если нет нормального деления, то надо вручную сделать подпрограмму деления через вычитание делителя из делимого до тех пор, пока делимое не станет либо нулем, либо меньше делителя. Так можно и остаток достать.
>>141941390кейл 5 под под MCS-51 код #asm
>>141941526Если на картинке - это всё, что есть, то пиши сначала подпрограмму вычитания через декременты.Запихиваешь в один регистр число, из которого надо вычитать, в другой - число, которое надо вычесть. И декрементируешь столько раз, сколько второе число короче.Потом подпрограмму деления через вычитание.1. Производишь вычитание второго числа из первого. Добавляешь к счетчику 1.2. Смотришь, не меньше ли первое число второгоЕсли меньше, то счетчик - это результат деления, а первое число - остаток.Если больше, то делаешь пункт 1 еще раз.
>>141941827>сколько второе число корочеПросто столько раз, сколько второе число. Ну ты понял.
>>141936029 (OP)POPCNT x&(x>>1)
Я нихуя не понял задания, но если тебе нужно выделить каждый бит, то используй логический сдвиг.
ОП здесь ещё? Без сравнения и декремента только сложение результата and по текущему и следующему биту. На выходе будет кол-во пар. Сравнивать ничего не надо.