Ёжли алгоритм и ТОЛЬКО СРАВНЕНИЕ... Есть регистр флагов с заранее записанным числом, равным количеству пар сравниваемых регистров. Делаем любые возможные операции сравнения из имеющегося набора команд последовательно с каждой парой. Если имело место совпадение - декремент регистра флагов, иначе пропуск декремента. По исчерпании сравниваемого проверяем содержимое остатка в регистре. Если там нуль - все байты совпали. А для сверки можно и xor помучить, главное перенос в таком случае БЕЗРАЗЛИЧЕН.
Интернет-общение обостряет восприятие текста диалогов. Психологическая особенность человека. Придавать эмоциональную окраску текстовым сообщениям. Так как мы не смотрим друг другу в глаза, и не знаем состояние оппонента, воображение дополняет сухой текст эмоциональным окрасом до максимума. То есть, так как нет точных данных, на всякий случай, текстовая информация считается угрозой. Это чистая физиология и психология, на уровне инстинктов. Поэтому, я к тебе "не прицепился". Твой вопрос прост и примитивен. Достаточно открыть книгу. Что ты сделал, чтобы ответить на этот вопрос. Я отвечу за тебя. Ничего. Ты не захотел тратить никаких усилий и пошел на форум. А теперь я разворачиваю всю глубину того, что хотел сказать. Если ты не не приложил никаких усилий для ответа на этот вопрос, что ты будешь делать дальше, когда перед тобой встанет более сложный вопрос? Снова лапки кверху и на форум? На форум нужно бежать, когда ты сделал все что только можно и оказался в тупике. Моим критикам посвящается: форумы нужны. Но начинающие должны хоть что-то делать и сами. Читать книги, пробовать. РАБОТАТЬ. А не бежать при малейших трудностях на форумах. Контент форума должен быть качественным. Не примитивные вопросы, а интересные проблемы, проекты. И наполнение контента в наших руках. Иначе можно скатиться до уровня - а что делает та или иная команда?
В ДШ не обозначено как устанавливается флаг Z командой сpc, а только сам факт что она влияет на Z, надо смотреть отдельный документ. Смысл в том, что если флаг Z был сброшен перед выполнением этой команды, то он останется сброшенным в любом случае.
в отдельном документе по командам AVR четко указано, как выставляется флаг Z: кроме 8 битов результата еще берется предыдущее значение флага Z. то есть, предыдущее значение флага Z ВЛИЯЕТ на новое значение этого флага.
_________________ Мудрость приходит вместе с импотенцией... Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Заголовок сообщения: Re: Как сравнить два 16-разрядных числа?
Добавлено: Чт ноя 29, 2018 13:39:51
Собутыльник Кота
Карма: 29
Рейтинг сообщений: 645
Зарегистрирован: Сб май 14, 2011 21:16:04 Сообщений: 2694 Откуда: г. Чайковский
Рейтинг сообщения:0 Медали: 1
Starichok51 писал(а):
в отдельном документе по командам AVR четко указано, как выставляется флаг Z:
Именно это я и написал, не?
Starichok51 писал(а):
то есть, предыдущее значение флага Z ВЛИЯЕТ на новое значение этого флага.
Я бы по другому это сформулировал, тоже самое, но с более дружественной для понимания трактовкой. Такие команды умеют только сбрасывать флаг Z, но не устанавливать.
_________________ Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Заголовок сообщения: Re: Как сравнить два 16-разрядных числа?
Добавлено: Сб дек 22, 2018 18:53:06
Собутыльник Кота
Карма: 29
Рейтинг сообщений: 645
Зарегистрирован: Сб май 14, 2011 21:16:04 Сообщений: 2694 Откуда: г. Чайковский
Рейтинг сообщения:0 Медали: 1
Установить - это значит перевести из состояния 0 в 1. В логическом выражении установки флага Z используется конъюнкция с текущим Z. Если теущий Zтек=0. То чему будет равен Zнов=Zтек*(любое значение).
И по логике. Если бы команды типа CPC умели устанавливать флаг Z, как мог бы работать такой набор команд на проверку нуля?
Код:
CP CPC CPC .. .. .. cpc breq skokposkok
_________________ Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
а если Zтек = 1, то Zнов тоже будет = 1, если в регистре будет 0. то есть, флаг установится. то есть, в командах условного перехода (например, больше или равно) при равенстве операндов флаг нуля будет УСТАНАВЛИВАТЬСЯ после каждого побайтного сравнения, то есть, получения нулевого результата...
Добавлено after 38 minutes 56 seconds:
Starichok51 писал(а):
если в регистре будет 0
тут и выше я ошибочку допустил. нужно было написать в результате сравнения, а не в регистре.
_________________ Мудрость приходит вместе с импотенцией... Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Заголовок сообщения: Re: Как сравнить два 16-разрядных числа?
Добавлено: Вс дек 23, 2018 08:36:47
Собутыльник Кота
Карма: 29
Рейтинг сообщений: 645
Зарегистрирован: Сб май 14, 2011 21:16:04 Сообщений: 2694 Откуда: г. Чайковский
Рейтинг сообщения:0 Медали: 1
Starichok51 писал(а):
а если Zтек = 1, то Zнов тоже будет = 1, если в регистре будет 0. то есть, флаг установится.
Флаг не установится, он не сбросится. В любой НТД (в частности в ДШ если угодно) установка флага означает перевод его в 1 из любого состояния (по буржуйски этот термин звучит как set).
_________________ Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
возможно, я тебя тогда не понял, тогда извини. да, команда ср ... установит флаг, а команда срс ... либо не изменит, либо, сбросит.
скорее всего, получилось, что я "не изменит" ошибочно посчитал за "установит"...
Добавлено after 2 hours 58 minutes 58 seconds: тут я еще немного подумал по этому вопросу... однако, в соответствии с приведенной мною формулой
Starichok51 писал(а):
~R7*~R6*~R5*~R4*~R3*~R2*~R1*~R0*Z
с таким же успехом можно считать, что команда срс ... заново устанавливает флаг нуля в случае равенства операндов, если флаг уже был установлен. или заново сбрасывает флаг нуля, если флаг был сброшен, независимо от результата сравнения. это ничуть не противоречит логике приведенной формулы.
тут дело вкуса - каждый может трактовать работу команды, как ему нравится... тебе нравится, что она умеет только сбрасывать, а мне нравится, что она умеет и устанавливать и сбрасывать...
_________________ Мудрость приходит вместе с импотенцией... Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Заголовок сообщения: Re: Как сравнить два 16-разрядных числа?
Добавлено: Пн дек 24, 2018 09:16:56
Собутыльник Кота
Карма: 29
Рейтинг сообщений: 645
Зарегистрирован: Сб май 14, 2011 21:16:04 Сообщений: 2694 Откуда: г. Чайковский
Рейтинг сообщения:0 Медали: 1
Starichok51 писал(а):
тут дело вкуса - каждый может трактовать работу команды, как ему нравится... тебе нравится, что она умеет только сбрасывать, а мне нравится, что она умеет и устанавливать и сбрасывать...
Мне нравится когда используют единую общепринятую терминологию, а не придумывают свою. В противном случае тебя никто понимать не будет.
_________________ Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
тогда дай точное указание на единую общепринятую терминологию, где сказано, что эта команда НЕ УМЕЕТ устанавливать флаг нуля. лично я по формуле истинности вижу, что она УМЕЕТ это делать.
_________________ Мудрость приходит вместе с импотенцией... Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Заголовок сообщения: Re: Как сравнить два 16-разрядных числа?
Добавлено: Пн дек 24, 2018 19:06:46
Собутыльник Кота
Карма: 29
Рейтинг сообщений: 645
Зарегистрирован: Сб май 14, 2011 21:16:04 Сообщений: 2694 Откуда: г. Чайковский
Рейтинг сообщения:0 Медали: 1
Это называется логическое выражение. Вы можете не только свою терминологию использовать, но и даже новый язык придумать со своим алфавитом, но понимать Вас никто не будет.
_________________ Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 52
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения