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


Жанама регистрлік (базалық және индекстік)



бет67/141
Дата26.09.2023
өлшемі3.68 Mb.
#478578
1   ...   63   64   65   66   67   68   69   70   ...   141
КОМПЬЮТЕРЛІК ЖҮЙЕЛЕР АРХИТЕКТУРАСЫ

Жанама регистрлік (базалық және индекстік)
Жады адрестеледі (байт немесе сөз). Жады ұяшығының са- лыстырмалы адресі тік жақша арқылы белгіленетін регистрде орналастырылады. 86 микропроцессорындағы жанама адрестеу келесі регистрлер арқылы қол жетімді: ВХ, ВР, SI және DI. ВХ немесе ВР регистрлерін пайдаланған кездегі адрестеу базалық, ал SI немесе DI регистрлерін пайдаланғанда индекстік деп ата- лады.
Егер жанама адресация келесі регистрлердің біреуі арқылы орындалса: ВХ, SI немесе DI, DS регистрі арқылы адрестелетін сегмент айтылады, сондықтан адресациялау барысында DS көр- сетпесе де болады:
mov es: [bx],'1' ――――→ mov [bx],'1'
осы келтірілген үзінді жадыны үнемдеу бойынша өте ыңғай- лы. Соңғы команданың кодында сегментті алмастыру префиксі болмағандықтан, ол 1 байт орынды аз алады. ВХ, SI және DI ре- гистрлері әртүрлі қолданылады.
Бірақ ВР регистрінде бәрі басқаша. Бұл регистр стекпен жұ- мыс істеуге арналған және осы регистр арқылы жанама адрестеу кезінде сегменттік стекті білдіреді, басқаша айтқанда, сегмент- тік регистр ретінде үнсіз қабылдау бойынша SS регистрі қолда-
134
көмегімен процессор қай сегменттік регистрден сегменттік ад- рес алынғанын анықтайды. ES сегменттік регистрі үшін префикс коды 26h, SS - 361i, ал CS - 2Eh. Егер префикс көрсетілмесе, он- да сегменттік адрес DS регистрінен алынады деп қабылдаймыз (оның өзінің префикс коды қарастырылса да).
Көрсетілген мысалда, қабылдау бойынша, барлық мәлімет- тер DS сегменттік регистрі арқылы адрестеледі, яғни inc meml орнына inc DS: mem көрсетуге болатын еді. Сегменттік регист- рді алмастырған жағдайда оны міндетті түрде көрсету керек.
inc ES: mem1
inc CS: mem2
Жады ұяшығына белгілі абсолютті адрес бойынша қол жет- кізу келесідей жүзеге асырылады:

mov AL,DS: [17h]

DS регистріндегі мәліметтер арқылы анықталатын ұяшықты 17h ығыстыра отырып, AL регистріне жүктеу

Ығыстырылатын регистрлік жаңа режим (базалық және индекстік)
Жады адрестеледі (байт немесе сөз). Операндтың салыстыр-
малы адресі BX, BP, SI немесе DI регистрлеріндегі мәліметтер- дің қосындысы ретінде және ығыстыру деп аталатын командада көрсетілген тұрақты ретінде анықталады. Дәл базалық адрестеу жағдайындағыдай BX, SI және DI регистрлерін пайдаланғанда DS арқылы адрестелетін сегмент айтылады, ал ВР регистрін пайдаланғанда SS регистріне сәйкес келетін сегмент стегі меңзе- леді.
ығыстыру = {SP, BP, DI, SI, BX} + командадағы ығыстырылу
135
нылады. Әдетте жанама адрестеу стекке мәліметтерге қол жеткі- зу қажет болған кезде пайдаланылады.
Бұл адрестеу әдісінің белгіленуі:

[BX]

(DS: [BX] білдіреді)

[BP]

(SS: [BP] білдіреді)

[SI]

(DS: [SI] білдіреді)

[DI]

(DS: [DI] білдіреді)

Базалық адрестеу программаның тиімділігін төмендетеді, се- бебі базалық регистрге талап етілген адресті жүктейтін қосым- ша амалды талап етеді. Бірақ базалық адресі бар команда жады- да аз орын алады (оған ұяшықтың адресі кіреді) және тура ад- рестелетін команда жылдамырақ орындалады.


Достарыңызбен бөлісу:
1   ...   63   64   65   66   67   68   69   70   ...   141




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

    Басты бет