Состояние флагов сохраняется до тех
Программист долго не использует флаги
-----------------------------------------------------------------
Состояние флагов сохраняется до тех пор, пока не будет вы-
полнена следующая команда, которая его изменяет, что обычно про-
исходит достаточно быстро. Поэтому рекомендуется после установки
флагов выполнять действия над ними как можно быстрее, чтобы избе-
жать самых разнообразных ошибок, связанных с неверной установкой
флагов.
Смешение операндов в памяти и непосредственных операндов
-----------------------------------------------------------------
Программа на языке Ассемблера может обращаться либо к смеще-
нию области памяти, в которой хранится переменная, либо к значе-
нию этой переменной. К сожалению, в языке Ассемблера нет ни инту-
итивных, ни строгих способов, позволяющих различить эти два вида
обращений, и в результате программисты часто путают обращения к
смещению и обращения к значению.
Ошибки, связанные с возвратом в начало сегмента
-----------------------------------------------------------------
Один из самых сложных моментов в программировании для мик-
ропроцессора 8086 состоит в том, что к памяти нельзя обращаться
как к одному большому массиву байт. Вместо этого память делится
на части (сегменты) размером 64К (килобайт), и доступ к ним осу-
ществляется через сегментные регистры. Сегментация памяти может
вызвать труднообнаруживаемые ошибки, поскольку если программа пы-
тается обратиться к адресу, который находится за границами сег-
мента, в действительности вместо этого происходит возврат в нача-
ло того же сегмента.
TDeb 3.0 #2-3 = 144 =
Сохранение содержимого регистров при обработке прерываний
-----------------------------------------------------------------