добавление логических операций and, or, xor, not в модуль bits
моделирование работы процессора при выполнении ассемблерных комманд
(для генерации тестов по архитектуре процессора)
добавлена возможность выполнения процессором кода из нескольких команд и возможности формирования кода:
генерация команд заданного типа с соответствующими аргументами, добавление команд к коду
добавлено первое задание по архитектуре
добавлен новый тип заний, предполагающий множественный выбор из вариантов
добавлено второе задание по архитектуре
исправлена ошибка в функции sub для регистра при выполнении команды sbb
к командам перехода добавлена пропущенная команда jmp
Добавлена тестирующая система и 118 тестов, проверяющих работу процессора:
команды перемещения (mov, movzx, movsx)
команды установки/сброса флага CF (stc, clc)
арифметические операции (add, sub, adc, sbb, neg)
логические операции (and, or, xor, not, test)
операции сдвигда (shl, shr, sal, sar, rol, ror, rcl, rcr)
команды перехода (jmp, jp, jz, jo, js, jnc, jnp, jnz, jno, jns,
je, jne, jl, jnge, jle, jng, jg, jnle, jge, jnl, jb, jnae, jbe, jna, ja, jnbe, jae, jnb)
Косметический ремонт кода: замена множественных присваиваний проходом по циклу
изменения в функции get_code_txt модуля AsmCodeGenerate
добавлены задания №3 и №4 по архитектуре: аналоги заданий №1 и №2 для 32-разрядных операндов в шестнадцатиричном виде
исправлена генерация дистракторов для вопросов со сдвигом в задании №1 по архитектуре
исправлена генерация дистракторов для вопросов со сдвигом в задании №3 по архитектуре (случай сдвига вправо аргумента со знаком)
совместимость с AQuiz: изменения в функции, переобразующей асемблерный код в кусок текста задания
изменения при установке флагов: пустая строка не допускается в качестве значения, явно устанавливается 0
совместимость с AQuiz: доработка multiple choice
исправление ошибки при печати html для вопросов с множественным выбором
вынесение генерации шестнадцатиричных аргументов в модуль AsmCodeGenerate
исключение случая генерации заданий с множественным выбором, в которых нет ни одного правильного ответа