Студопедия

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника



Ығыстырудың қосымша командалары

Читайте также:
  1. А қосымшасы
  2. Айталамалық ығыстыру командалары
  3. Айталаманы басқару командалары
  4. Алып-орналастыру командалары
  5. Басқару тізгінін шартқа байланысты ауыстыру командалары
  6. Жалаушаларды көшіріп жазу командалары
  7. Көбейту командалары
  8. Халықты иондаушы сәулеленуге ұшырататын қосымша көздер

Соңғы шыққан шағынпроцессорлардың командалар жүйесінде SHLD және SHRD сияқты қосымша командалар пайда болды (12-сурет). Олар қос дәлдікті ығыстыру командалары деп аталады. Команда пішімі:

ОПК 1_операнд,2_операнд,санауыш

SHLD командасы.SHLD (double precіsіon shіft left) – қос дәлдікті солға ығыстыру командасы. Бұл команда 1_операндтың биттерін (санауышта көрсетілген санға тең битке) солға қарай ығыстырады, ал бірінші операндтың босаған орындарын 2_операндтың биттерімен толтырады. SHLD командасы орындалған кезде 1_операндтың үлкен разрядының мәні CF жалаушасына жазылады.

SHLD командасының шағынпроцессорда жүзеге асырылу сұлбасы 13-суретте көрсетілген. Шағынпроцессордың ішінде 1_операнд және 2_операнд аралық қос регистрде біріктіріледі. Содан кейін осы аралық регистрдің мәні санауышта көрсетілген санға солга ығыстырылады, ал босаған кіші разряд­тардың орны нөлмен толтырылады. Ығыстыру біткен соң 1_операндқа аралық регистрдің тиісті биттері көшіріліп жазылады, ал 2_операнд өзгеріссіз қалады.

SHRD командасы. SHRD (double precіsіon shіft rіght) – қос дәлдікті оңға ығыстыру командасы (18-сурет). Бұл команда 1_операндтың биттерін (санауышта көрсетілген санға тең битке) оңға қарай ығыстырады, ал бірінші операндтың босаған орындардын 2_операндтың биттерімен толтырады. SHRD командасы орындалған кезде CF жалаушасына 1_операндтың кіші разрядының мәні жазылады. Шағынпроцессорда SHRD командасы SHLD командасына (19-сурет) ұқсас жұзеге асырылады.

Негізгі әдебиет:

1[57-64];

4[41-43];

7[184-200].

Бақылау сұрақтары

1.Логикалық командалар тобының жұмыс істеу логикасы?

2.Арифметикалық ығыстыру командалар тобының жұмыс істеу логикасы?



3.Логикалық ығыстыру командалар тобының жұмыс істеу логикасы?

4.Қайталамалық ығыстыру командалар тобының жұмыс істеу логикасы?

5.Ығыстырудың қосымша командаларының жұмыс істеу логикасы?

 

 

8 дәрістің тақырыбы:

Командалар типы.Басқаруды жіберу командалары.

Бағдарлама (программа) жедел жадының белгілі бір кеңістігінле орналасқан командалар мен деректер тізбегі. Программаның келесі қандай командасы орындалатынын шағынпроцессор CS:[EІP/ІP] регистрлер жұбының мәнінен біле алады. CS сегменттік регистрде ағымдағы кода сегментінің физикалық (базалық) мекенжайы сақталады. EІP/ІP команда көрсеткіші регистрінде келесі орындалатын команданың ағымдағы кода сегментінің басынан жылжу аралығын көрсететін мән орналасады. Басқару тізгінін ауыстыру командалары CS және EІP/ІP регистрлерінің мәнін өзгертеді. Сондықтан шағынпроцессор кейде программаның кезектегі келесі командасын емес, программаның басқа бөлігінде орналасқан команданы орындайды. Сөйтіп, бұл топтың командалары программаның бір жерінен екінші жеріне көшуге мүмкіндік береді.



Басқару тізгінін ауыстыру командаларының үш түрі бар:

- басқару тізгінін шартсыз ауыстыру;

- басқару тізгінін шартқа байланысты ауыстыру;

- қайталаманы басқару.

Басқару тізгіні берілетін орынды көрсету үшін тамға деген ұғым пайдаланылады. Тамға (label) – басқару тізгінін ауыстыру командаларында операнд ретінде қолдануға арналған белгілі бір жады ұяшығын көрсететін, жол басында орналасатын ерекше атау. Тамғаны қос нүкте (:) операторымен немесе label нұсқауымен анықтауға болады. Мысалы

M1: немесе M1 label near
MOV CX,25   MOV CX,25

Label нұсқауынан кейін тамғаның түрі (қашықтық атрибуты) келтіріледі. Ол екі түрлі болады: near және far.

Near – бұл тамғаға осы тамға сипатталған кода сегментінің ішінде ғана өтуге болады. Ағымдағы кода сегментінің ішінде басқару тізгінін ауыстыру сегментішкілік немесе жақындағы деп аталады. Бұл кезде тек EІP/ІP регистрінің мәні ғана өзгереді.

Far – бұл тамғаға ағымдағы кода сегментінің сыртынан басқару тізгінін беруге болады. Ағымдағы кода сегментінің сыртына басқару тізгін ауыстыру сегментаралық немесе алыстағы деп аталады. Бұл кезде CS және EІP/ІP регистрлерінің мәні өзгереді.


Дата добавления: 2015-01-05; просмотров: 32; Нарушение авторских прав


<== предыдущая лекция | следующая лекция ==>
Айталамалық ығыстыру командалары | Басқару тізгінін шартқа байланысты ауыстыру командалары
lektsii.com - Лекции.Ком - 2014-2018 год. (0.008 сек.) Главная страница Случайная страница Контакты