==== Регистры процессора ==== Регистры -- самая быстрая память, с которой можно иметь дело в современных ПК. В силу дороговизны такого вида памяти, регистров в процессоре немного, и у каждого есть своя функция. У всех регистров есть название. Основные регистры (регистры общего назначения) имеют следующие имена: //rax//, //rbx//, //rcx//, //rdx//. Они используются в частности в арифметических и логических операциях. Разрядность каждого из них -- 64 бита. Возможно обращение к младшему двойному слову (32 бита) каждого из вышеперечисленных регистров, используя запись //e-x//, символ //-// означает, что вместо него подставляется то необходимое имя регистра, к которому вы желаете обратиться. Обращение к младшему слову младшего двоёного слова производится с помощью записи //-x//, где символ //-// используется в том же значении, что и выше. Обращение к младшему и старшему байту младшего слова младшего двойного слова регистра //r-x// возможно по имени //-l// и //-h// соответственно. Все вышперечисленные имена зарезервированы, и их нельзя использовать в качестве меток или имён переменных. === Команда mov === mov приёмник, источник Команда //mov// производит копирование //источника// в //приёмник//. === Команда not === not операнд Команда //not// инвертирует биты //операнда//. === Команда or === or приёмник, источник Команда //or// совершает побитовую операцию **ИЛИ** с //приёмником// и //источником// и помещает результат в //приёмник//. === Команда and === Аналогична предыдущей. Ещё раз повторим: and приёмник, источник Команда //or// совершает побитовую операцию **И** с //приёмником// и //источником// и помещает результат в //приёмник//. === Команда xor === Аналогична предыдущим. А вот для тех, кто не любит аналогии: xor приёмник, источник Команда //or// совершает побитовую операцию **ИСКЛЮЧАЮЩЕЕ ИЛИ** с //приёмником// и //источником// и помещает результат в //приёмник//. Подробнее в разделе [[asm:lesson1]] ==== Опкод ==== http://www.mlsite.net/8086/ ==== Datashts ==== http://datasheets.chipdb.org/Intel/x86/808x/datashts/8086/