М. З. Якубова техника ғылымдарының кандидаты, доцент


JMP командасы арқылы циклдерді ұйымдастыру (екін- ші әдісі)



бет77/141
Дата26.09.2023
өлшемі3.68 Mb.
#478578
1   ...   73   74   75   76   77   78   79   80   ...   141
КОМПЬЮТЕРЛІК ЖҮЙЕЛЕР АРХИТЕКТУРАСЫ

JMP командасы арқылы циклдерді ұйымдастыру (екін- ші әдісі)
Jmp командасы басқаруды берілген немесе басқа программа-
лық сегменттің көрсетілген нүктесіне береді. Қайту адресі сақ- талмайды. Команда процессордың флагтарына әсер етпейді.
Jmp командасының бес түрі болады:
  • қысқа тура ауысу (- 128... + 127 байттар аралығында);
  • жақын тура ауысу (ағымдағы программалық сегмент ау- мағында);
  • алыс тура ауысу (басқа программалық сегментке);
  • жақын жанама ауысу;
  • алыс жанама ауысу.

  • Барлық ауысулардың түрі jmp командасын пайдаланады, бі- рақ әртүрлі амалдар кодынан тұрады. Көп жағдайларда трансля- тор контекст бойынша ауысу түрін анықтайды, ол мүмкін бол- маған кезде, атрибуттік операторлар (short – тура қысқа ауысу; near ptr – тура жақын ауысу; far ptr – тура алыс ауысу; word ptr – жанама жақын ауысу; dword ptr – жанама алыс ауысу) арқылы орындалады.

Команда

Атқаратын қызметі

Процессор

JMP белгісі

Шартсыз ауысу

8086

Келесі мысалды қарастырамыз:

org 100h

; СОМ – файлдың басы

1

2

begin:

; программа кодының басталу белгісі

label1:

; белгіні құрамыз (Label – белгі).

mov ah,9

; АН регистріне 9 жолды жылжытамыз.

mov dx,offset String

Мәліметтер сегментінің басталуынан салыс- тырмалы String белгісінің ығыстырылуын DX ре- гистріне орналастырады

int 21h

; «жолды шығару» функциясы

jmp Label1

; Label1 белгісі бар жолға көшу

150

1

2

add cx,12

; cx регистрінің мәніне 12 санын қосу

dec cx

; cx регистрінің мәнін 1-ге азайту

ret

; «программаны аяқтау» функциясы

string db "SALEM",13,10,

; баспаға шығарылатын мәліметтердің жолы

end begin

; программа кодының аяқталу белгісі



Достарыңызбен бөлісу:
1   ...   73   74   75   76   77   78   79   80   ...   141




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет