ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
19 апреля
715493 Топик полностью
Ксения (26.11.2016 15:00 - 15:21, просмотров: 241) ответил argus98 на ps Кстати, а что мешает ассемблерщикам использовать человеческую запись команд (типа R2 = R2+R4+C) вместо невразумительных мнемоник типа AUIPC?
Запись команд - дело десятое. Тем более что всегда можно создать препроцессор, транслирующий одну нотацию в другую. Тогда как важным является именно то, какого рода и какой сложности инструкции он способен выполнять. Если список команд беден, то производительность станет тормозить необходимость эмуляции то одного, то другого. А результат получится плачевным - MIPS'ов много, а производительность на реальных/инженерных задачах низкая. Например, отсутствие команды для вычисления экспоненты (которой у x86/x64 до сих пор нету) сильно снижает скорость квантово-механических расчетов. Вот однажды и мне самой пришлось для вычисления экспоненты ассемблерную функцию писать, т.к. библиотечная функция исключительно медленная. Поэтому для контролеров, у которых основная работа связана с обслуживанием периферии, иметь в списке тригонометрические, логарифмические и пр. функции не только нет необходимости, но их наличие было бы вредным, т.к. требовало бы слишком много тактов, между которыми микроконтроллер не может обслужить прерывание. Тогда как процессорам-вычислителям инженерные функции крайне необходимы! И перекладывать их на эмуляцию - неправильно.