Сегмент кода.

 

В сегменте кода обычно записываются команды микропроцессора, которые выполняются последовательно друг за другом. Для определения адреса следующей команды после выполнения предыдущей используются два регистра – CS (регистр сегмента кода, содержит начальный адрес этого сегмента) и IР (регистр указателя команд, содержит смещение текущей команды относительно начала этого сегмента). Начальные значения регистров CS и IP загружаются операционной системой в начале выполнения программы, в процессе выполнения команд содержимое IP автоматически изменяется. Если изменить содержимое CS и/или IP, то выполнение программы продолжится с нового адреса. Однако изменить эти регистры явным образом невозможно, это можно сделать при выполнении некоторых команд (например, команды безусловного перехода или вызова подпрограммы).

В сегменте кода можно также описывать данные, однако это целесообразно делать в обоснованных случаях, например, в программах обработки прерываний.