Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TsUiMP_lektsia.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
246 Кб
Скачать
☆

2.3 Микропроцессорлық жүйенің жұмысын бағдарлау

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

Ассемблер тіліндегі бағдарлама нақтылы тәртіппен келесі түрде жазылады (2.2-сурет).

 

{Белгі:}

Мнемокод

{Операнд(тар)}

; {Түсініктеме}

2.2 Сурет

Көрнекі жақшаларда болуы да, болмауы да мүмкін элементтер келтірілген. Белгі, мнемокод және операндтар бос орын арқылы ажыратылады.

Белгі – команданың символды адресі. Белгілер ауыстыру арқылы баратын командаларда ғана қойылады. Белгі артында қоснүкте қойылады. Белгі аталымының бірінші символы әріп немесе “?”, “.”, “@”, “_”, “$” символдарының біреуі болу керек. Ауыстыру немесе қосалқы бағдарламаларды шақыру командаларында белгі аталымы операнд ретінде пайдаланылады.

Мнемокод – команданың ассемблер тіліндегі жазылымы. Мнемокод ретінде команда қызметінің ағылшын тіліндегі мағынасының қысқартылымы пайдаланылады: ADD (ADDition), SUB (SUBtraction), XCHG (eXCHanGe).

Операндтар үтір арқылы бөлінеді. Екі операнд берілген жағдайда оның біріншісі информация қабылдаушысы, ал екіншісі информация көзі болады.

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

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

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

Соңғы айтылғандарды ескере отырып, 2.2-суретте келтірілген бағдарлама жазылымының алдына үш бағана қосылды: оның біріншісінде бағдарлама жолдарының жолдарының нөмірлері (олар бағдарламаны түсіндіруге ғана пайдаланылады), екіншісінде сәйкесті дерек енгізілетін жады ұяшығының адресі, үшіншісінде оларға енгізілетін команда кодтары мен операндтар көрсетіледі. Құрылған бағдарламалар жадының 2100 адресті ұяшығынан бастап жазылып, келесі бағдарламалар одан әрі жалғастырыла береді. Жеке бағдарлама әдетте RST 7 командасымен аяқталады. Кейбір бағдарламалардың келесі құрылатын бағдарламалардың құрамына қосалқы бағдарлама ретінде енгізілу мүмкіндігін қамтамасыз ету мақсатымен, олар RET командасымен аяқталды.

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

 

2.8 К е с т е

 

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

 

0

NOP

LXI

B

STAX

B

INX

B

INR

B

DCR

B

MVI

B

RLC

 

DAD

B

LDAX

B

DCX

B

INR

C

DCR

C

MVI

C

RRC

0

1

 

LXI

D

STAX

D

INX

D

INR

D

DCR

D

MVI

D

RAL

 

DAD

D

LDAX

D

DCX

D

INR

E

DCR

E

MVI

E

RAR

1

2

RIM

LXI

H

SHLD

INX

H

INR

H

DCR

H

MVI

H

DAA

 

DAD

H

LHLD

DCX

H

INR

L

DCR

L

MVI

L

CMA

2

3

SIM

LXI

SP

STA

INX

SP

INR

M

DCR

M

MVI

M

STC

 

DAD

SP

LDA

DCX

SP

INR

A

DCR

A

MVI

A

CMC

3

4

MOV

B,B

MOV

B,C

MOV

B,D

MOV

B,E

MOV

B,H

MOV

B,L

MOV

B,M

MOV

B,A

MOV

C,B

MOV

C,C

MOV

C,D

MOV

C,E

MOV

C,H

MOV

C,L

MOV

C,M

MOV

C,A

4

5

MOV

D,B

MOV

D,C

MOV

D,D

MOV

D,E

MOV

D,H

MOV

D,L

MOV

D,M

MOV

D,A

MOV

E,B

MOV

E,C

MOV

E,D

MOV

E,E

MOV

E,H

MOV

E,L

MOV

E,M

MOV

E,A

5

6

MOV

H,B

MOV

H,C

MOV

H,D

MOV

H,E

MOV

H,H

MOV

H,L

MOV

H,M

MOV

H,A

MOV

L,B

MOV

L,C

MOV

L,D

MOV

L,E

MOV

L,H

MOV

L,L

MOV

L,M

MOV

L,A

6

7

MOV

M,B

MOV

M,C

MOV

M,D

MOV

M,E

MOV

M,H

MOV

M,L

HLT

MOV

M,A

MOV

A,B

MOV

A,C

MOV

A,D

MOV

A,E

MOV

A,H

MOV

A,L

MOV

A,M

MOV

A,A

7

8

ADD

B

ADD

C

ADD

D

ADD

E

ADD

H

ADD

L

ADD

M

ADD

A

ADC

B

ADC

C

ADC

D

ADC

E

ADC

H

ADC

L

ADC

M

ADC

A

8

9

SUB

B

SUB

C

SUB

D

SUB

E

SUB

H

SUB

L

SUB

M

SUB

A

SBB

B

SBB

C

SBB

D

SBB

E

SBB

H

SBB

L

SBB

M

SBB

A

9

A

ANA

B

ANA

C

ANA

D

ANA

E

ANA

H

ANA

L

ANA

M

ANA

A

XRA

B

XRA

C

XRA

D

XRA

E

XRA

H

XRA

L

XRA

M

XRA

A

A

B

ORA

B

ORA

C

ORA

D

ORA

E

ORA

H

ORA

L

ORA

M

ORA

A

CMP

B

CMP

C

CMP

D

CMP

E

CMP

H

CMP

L

CMP

M

CMP

A

B

C

RNZ

POP

B

JNZ

JMP

CNZ

PUSH

B

ADI

RST

0

RZ

RET

JZ

 

CZ

CALL

ACI

RST

1

C

D

RNC

POP

D

JNC

OUT

CNC

PUSH

D

SUI

RST

2

RC

 

JC

IN

CC

 

SBI

RST

3

D

E

RPO

POP

H

JPO

XTHL

CPO

PUSH

H

ANI

RST

4

RPE

PCHL

JPE

XCHG

CPE

 

XRI

RST

5

E

F

RP

POP

PSW

JP

DI

CP

PUSH

PSW

ORI

RST

6

RM

SPHL

JM

EI

CM

 

CPI

RST

7

F

 

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

 

 

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]