Жылжыту командалары



МАЗМҰНЫ

КІРІСПЕ 3
1. ЛОГИКАЛЫҚ КОМАНДАЛАР 5
1.1 And командасының қолданылуы 5
1.2 Or командасының қолданылуы 5
1.3 Xor командасының қолданылуы 5
1.4 Test командасының қолданынуы 6
1.5 Not командасының қолданылуы 7
2. ЖЫЛЖЫТУ КОМАНДАЛАРЫ 9
2.1 Жалпы мағлұмат 9
2.2 Сызықты жылжыту командалары 9
2.3 Циклдік жылжыту командалары 11
ҚОРЫТЫНДЫ 13
ПАЙДАЛАНҒАН ӘДЕБИЕТТЕР ТІЗІМІ 14

Пән: Автоматтандыру, Техника
Жұмыс түрі:  Реферат
Тегін:  Антиплагиат
Көлемі: 12 бет
Таңдаулыға:   
МАЗМҰНЫ

КІРІСПЕ 3
1. ЛОГИКАЛЫҚ КОМАНДАЛАР 5
1.1 And командасының қолданылуы 5
1.2 Or командасының қолданылуы 5
1.3 Xor командасының қолданылуы 5
1.4 Test командасының қолданынуы 6
1.5 Not командасының қолданылуы 7
2. ЖЫЛЖЫТУ КОМАНДАЛАРЫ 9
2.1 Жалпы мағлұмат 9
2.2 Сызықты жылжыту командалары 9
2.3 Циклдік жылжыту командалары 11
ҚОРЫТЫНДЫ 13
ПАЙДАЛАНҒАН ӘДЕБИЕТТЕР ТІЗІМІ 14

КІРІСПЕ

Assembler тілінің арифметикалық есептеулермен қатар,
микропроцессордың командалар жүйесінде логикалық мәліметтерді өзгертулерден
тұрады. Логикалық деп, формальді логика ережелерінен тұрады. Формальді
логика жалған және ақиқат деңгейінде жұмыс атқарады. Ол микропроцессор үшін
1 және 0-ден құралады. Компьютерлерге бірлік және нөлдік тілдер жақын
болып табылады, бірақ минимальді мәліметтердің бірілігімен жұмыс істейтін
машиналық командалар – байт болып табылады.

1. Логикалық командалар:
• And командасының қолданылуы
• Or командасының қолданылуы
• Xor командасының қолданылуы
• Test командасының қолданынуы
• Not командасының қолданылуы
2. Жылжыту командалары:
Сызықты жылжыту
• Shl (Shift Logical Left ) командасының қолданылуы
• Shr (Shift Logical Right) командасының қолданылуы
• Sal (Shift Arithmetic Left) командасының қолданылуы
• Sar (Shift Arifhmetic Right) командасының қолданылуы
Циклдік жылжыту
• Rol (Rotate Left) командасының қолданылуы
• Ror (Rotate Right) командасының қолданылуы
• Rcl (Rotate through Carry Left) командасының қолданылуы
• Rcr (Rotate through Carry Right) командасының қолданылуы

1-сурет Логикалық мәліметтер жүйесі

1. ЛОГИКАЛЫҚ КОМАНДАЛАР
1.1 And командасының қолданылуы

Логикалық мәліметтердің жұмысының байланысын тақтатпайтын
микропроцессор командалар жүйесі келесі командалардан жиынтығынан тұрады:
And оперант_1, оперант_2 – логикалық көбейту операциясы. Команда
разряд бойынша логикалық операция ЖӘНЕ (конъюнкция) бит оперант оперант_1,
оперант_2 орындайды. Нәтижесі бірінші оперант_1 жазылады.

Белгілі разряд (бит) 0 түсіріп тастау үшін келесі команда қолданылады:

And оперант_1, оперант_2
Бұл командада оперант_2, маска ролін орындайтын, разряд орындарында
нөлдік биттен түру керек.

And eax, 0dh ; eax регистрындағы 1 битті 0 – ге түсіріп тастау.

1.2 Or командасының қолданылуы

Оr оперант_1, оперант_2 – логикалық қосу операциясы. Команда разряд
бойынша логикалық операция НЕМЕСЕ (дизъюнкция) бит оперант оперант_1,
немесе оперант_2 орындайды. Нәтижесі оперант_1 жазылады.

Белгілі разрядты (бит) 1 орнату үшін келесі командасы колданылады:
Оr оперант_1, оперант_2
Бұл командада оперант_2, маска ролін орындайтын, разряд орындарында
бірлік биттен түру керек.
Or eax,10b ; eax регистрына 1 бит орнату керек.

1.3 Xor командасының қолданылуы

Xor оперант_1, оперант_2 – логикалық бірігу операциясы. Команда разряд
бойынша шығарылған логикалық операция НЕМЕСЕ операнд биттарын оперант_1,
оперант_2 орындайды. Нәтижесі бірінші опернтқа жазылады.
Команда Xor оперант_1, оперант_2 қолданылады:
o оперант_1, оперант_2 биттардың айырмашылығын табу үшін;
o оперант_1 берілген юиттардың күйін инверторлау үшән.
Бізді қызықтырып отырған бит маска ( оперант_2) Xor командасы
орындалған кезде 1 бит болу керек, ал қалғандары – 0

Xor eax,10b ; eax регистрындағы 1 бит инверторлау үшін
Jz mes ; өту, егер 1 бит а1 бірлік болса

1.4 Test командасының қолданынуы

Test оперант_1, оперант_2 – операция тексеру (логикалық көбейту
әдісімен). Команда разряд бойынша логикалық операция ЖӘНЕ оперант битарын
оперант_1, оперант_2 орындайды. Опернат күйі бұрынғыдай болады, тек
флагтар ғана өзгереді zf, sf, және pf, ол оперант биттарынынң күйін жеке
талдауға мүмкіндік береді және олардың күйін өзгертпей.
Xor-дағы берілген бит күйін тексеру үшін келесі команда қолданылады:
Test оперант_1, оперант_2 (оперант_1- тексеру)
Тексерілетін бит оперант_1 маскада ( оперант_2) жеке мағынада болу
керек. Test командасының алгоритмы And командасының алгоритміне сәйкес,
бірақ ол оперант_1 мағынасын өзгертпейді. Команданың нәтижесі болып zf нол
флагы орнатылады:
o егер zf нөлге тең болса, онда логикалық көбейту нәтижесі
нөлдік нәтиже болады, сонда тиісті 1 бит маска оперант_1
бірлік битпен сәйкес келмейді.
o Егер zf 1 тең болса, онда логикалық көбейту нәтижесі нөлдік
нәтиже болмайды, сонда ең болмағанда 1 бит маска оперант_1
бірлік битпен сәйкес келді.

Test eax,10h
Jz m1 ; өту, егер 4 бит 1 битке тең болса.

Мысалда көргеніміздей Test командасының нәтижесі реакциясы үшін өту
командасы jnz (Jamp if Not Zero) - өту, егер флаг zf нөл нөлдік болмаса,
немесе команда jz (Jamp if Zero) – өту, егер zf нөл флагы 0 –ге тең
болса.
Келесі екі команда орнатылған 1 бит оперант іздеуді жүзеге асыруға
рұқсат береді. Іздеуді оперант басынанда да, соңынанда да жасауға болады:
bsf оперант_1, оперант_2 (Bit Scaning Forward) – биттарды
сканерлеу. 1 орнатылған (0 биттан үлкен битқа дейін) оперант_2
биттарын кішісінен үлкенініе дейін 1 биттарды іздеп сканерлейді.
Егер ондай табылса, онда оперант_1- ге осы биттің нөмері бүтін түрде
кіргізіледі. Егер бүкіл оперант_2 - гі биттар нөлге тең болса, онда zf
нөл флагы 1-ге орнатылады, басқа жағдайда zf флагы 0- ге түсіріледі.

mov a1,02h
bsf bx,a1 ; bx=1
jz m1 ; өту, егер a1=00h

bcr оперант_1, оперант_2 (Bit Scaning Reset ) – биттарды кері қарай
сканерлеу. 1 орнатылған (0 биттан үлкен битқа дейін) оперант_2 биттарын
кішісінен үлкенініе дейін 1 биттарды іздеп сканерлейді. Егер ондай табылса,
онда оперант_1- ге осы биттің нөмері бүтін түрде кіргізіледі.

Егер бүкіл оперант_2 - гі биттар нөлге тең болса, онда zf нөл флагы 1-ге
орнатылады, басқа жағдайда zf ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Ассемблер тілінде программалау
Машинада деректер бойынша операцияларды орындау
Командаларының конвейерлі орындалуы
Windows операциялық жүйе
Photoshop бағдарламасы туралы
Microsoft Excel электрондық кестесі туралы
Опциялар мен аргументер
CorelDraw бағдарламасымен жұмыс істеу
Norton Commander операциялық қабыршығы
Cisc архитектуралы микроконтроллерлер
Пәндер