1. Характеристика на CISC инструкции
1. Технологията CISC (Complex Instruction Set Computer) - сложен
набор команди
Tя е свързана с традиционните процесори, при които се поддържат
множество инструкции, изпълнявани за различно време. Това време е в
зависимост от типа на инструкцията, дължината, метода за адресиране на
операндите и пр. Обикновено CISC ( Complex Instruction Set Code) процесорите
използват по-богат и по-пълен набор от инструкции. Някои от тези инструкции
са доста сложни. За изпълнението им се налага те да бъдат разделени на
няколко по-прости операции(микрооперации).
Например, една операция за сумиране на две числа (данни), намиращи
се в паметта, изисква да се изпълнят няколко по-прости операции:
извличане (прочитане) на инструкцията от паметта,
декодиране (дешифриране) на командата, формиране на адресите на
данните, които се обработват
извличане на данните (операндите) от паметта и записването им в
регистрите, изпълнение на операцията (сумиране)
записване на резултата в паметта и т.н.
2. Видове CISC инструкции:
Според характера на операциите, CISC инструкциите са обособени в
няколко групи:
- Аритметични. Осъществяват се от АЛУ за основните аритметични
операции върху два операнда - сумиране, изваждане, изместване, умножение,
делене.
- Логически. Осъществяват се от АЛУ за основните логически операции
върху два операнда: И (ANL), ИЛИ (ORL ), Диверсия (CPL), сума по модул 2. и
др. Операндите могат да бьдат в байтов формат или като отделни битове.
- Инструкции за обмен на данни. Свързани са с движението на
информация (MOV, LOAD) между отделни регистри и блокове на паметта.
Инструкциите, свързани с работата на стека, също принадлежат към тази група.
- Инструкции - операции. Това са къси инструкции, за нулиране, за
установяване на съдържанието на вътрешните регистри и др.
- Управляващи инструкции. Автоматизирано вземат решение за пътя на
изпълнение на задачата, например при преход за работа с подпрограми.
При инструкциите за безусловен преход се предписва скок към някакъв
адрес, без предварителни условия.
При инструкциите за условен преход се предписва скок към някакъв
адрес, ако се изпълни определено условие (if...), тогава (then). Такова условие
би могло да бъде: състояние на акумулатора при флаг Z; състояние на флага за
пренос С и др.
3. Формат при нискоразредни CISC микропроцесори. При системи с
ниска разредност са предпочитани късите еднобайтови инструкции. Ако
необходимите операнди не се вместват в еднобайтовия формат, инструкцията
съдържа повече байтове. Късите еднобайтови инструкции се предпочитат
когато се оперира с вътрешните регистри, най-често с акумулатора АСС (фиг4
6А).
2. Еднобайтовата инструкция съдържа две полета по 4 бита. Първото поле
съдържа основно машинния код на КОП и адреса на акумулатора АСС или друг
вътрешен регистър. Второто поле е отредено за адрес на втория операнд - друг
вътрешен регистър.
Многобайтовите инструкции в повечето случаи изискват повече от 1
цикъл за изпълнение на операцията .
В техните допълнителни байтове се вписват операнди -адреси или
конкретни данни (литерали). Първият им байт съдържа КОП, данни за
дължината на цялата инструкция и характера на операндите - адрес или
литерал.
На фиг. 4.66 е даден формат на трибайтова инструкция за пренос на данни
MOV dir,dir от един 8 битов адрес (F3) към друг 8 битов адрес (В 7).
В техническите ръководства за определена фамилия микропроцесори се дава
мнемоничното означение на операцията (ADD. MOV}, символното описание на
операцията, HEX кода на КОП, броя на байтовете и на циклите.
4. CISC формат при високоразредни микропроцесори- При тях
дължината на инструкциите достига 6 и повече байта; броят на инструкциите е
до няколко стотици, а начините на адресиране
- около 10. Броят на циклите за изпълнение на 1 инструкция е между 1
до 20, средно около 4 цикъла. В
многобайтовата инструкция се
специфицира и вида на паралелната обработка.