Ассемблер тілінде программалау туралы ақпарат

Нормативтік сілтемелер 6
Пайданылатын қысқартулар мен белгілер 7
Кіріспе 8
1. Ассемблер тілінде программалау 9
2. Директивалар 12
3. Өрнектер 21
Пайдаланылған әдебиеттер і 35
Тақырыбының өзектілігі.
Курстық жұмыстың өзектілігі тақырыб бойынша қарастылылған материалдардың микропроцессорлық техникада пайдалуымен анықталады.
Курстық жұмыстың мақсаттары мен міндеттерімикропроцессорлық техникадағы пайдаланатын құрылғыларды қолдану принциптеріне негізделеді.
Практикалық қажеттілігі.
Курстық жұмыстың практикалық қажеттілігі қарастырылған программалау принциетерімен анықталады.
Курстық жұмыстың мазмұны тапсырманың және әдістемелік нұсқаудың талаптарына сәйкеседі [1].
1. Б.С. Есмағамбетов. «Цифрлық құрылғылар және микропроцессорлар» пәні бойынша 5В071900 «Радиотехника, электроника және телекоммуникациялар» мамандығы студенттеріне курстық жұмысты орындау үшін ӘДІСТЕМЕЛІК НҰСҚАУ. М.О.Әуезов атындағы ОҚМУ баспа орталығы, Шымкент қ., Тауке хан д., 5
2. Есмағамбетов Б.С. Басқару жүйелердргі микропро-цессорлық кешендер. Оқу құралы. Шымкент: «Әлем баспасы», 2013, 236с
3. Есмағамбетов Б.С. Цифрлық құрылғылары және микропроцессорлар. Оқу құралы. Шымкент: «Нұрлы бейне» баспасы, 2010, 184с
4. Григорьев В.Л. Программирование однокристальных микропроцессоров. – М.: Энергоатомиздат, 1987.М.В.Напрасник. Микропроцессоры и микроЭВМ.-М.: Высшая школа, 1989.
        
        ҚАЗАҚСТАН РЕСПУБЛИКАСЫ БІЛІМ ЖӘНЕ ҒЫЛЫМ 
МИНИСТРЛІГІ
М.ӘУЕЗОВ атындағы ОҢТҮСТІК ҚАЗАҚСТАН МЕМЛЕКЕТТІК УНИВЕРСИТЕТІ
Автоматтандыру, ТЕЛЕКОММУНИКАЦИЯ және
БАСҚАРУ кафедрасы
КУРСТЫҚ ЖҰМЫС
пәні
мамандығы: ... ... және ... ... ... ... ____________
Бағасы
Бағасына қорғалды
___________ 2015_ж.
Комиссия ... аты - жөні ... ... аты - жөні ... ... ... аты - жөні ... ... ... ... ... аты - ... _____________________
қолы, аты - жөні,
Шымкент 2015 ж.
Ф.7.05 - 04
М.О. Әуезов атындағы Оңтүстік Қазақстан мемлекеттік университеті
Автоматтандыру, ... және ... ... ... С.Ө. ... ... ... бойынша курстық жұмыс
ТАПСЫРМА № 12
Студент тобы
Жұмыс тақырыбы: Ассемблер тілінде программалау
Бастапқы мәліметтер жоқ

Курстық жұмыстың мазмұны
Орындау мерзімі
Салыстырмалы ... ... ... ... ... программалау
5 апта
8-9
3
Директивалар
7 апта
1-2
4
Өрнектер
8 апта
5-6

Графикалық бөлімнің мазмұны
Орындау мерзімі
Парақ саны
Формат
Әдебиет:
1. Б.С. Есмағамбетов. пәні бойынша әдістемелік ... ... Б.С. ... ... және ... Оқу ... Шымкент: баспасы, 2010, 184с
3.Есмағамбетов Б.С. Басқару жүйелердргі микропро-цессорлық ... Оқу ... ... , 2013, ... ... күні _________, жұмысты қорғалған күні ______
Жұмыстың жетекшісі: _______________________
(аты - жөні, қолы) ... ... ... ____________________________
(күні, студенттің қолы)
Ф.7.04 - 06
Қазақстан республикасы білім және ғылым ... ... ... ... Қазақстан мемлекеттік университеті
жоғары мектебі
кафедрасы

Кафедра меңгерушісі
Исмаилов С.Ө. т.ғ.к., доцент
_____________2015ж.
Курстық жұмыс қорғау
Хаттамасы № ... ... ... ... ...
(аты - жөні)
Курстық жұмыс тақырыбы Ассемблер тілінде программалау
Қорғау кезінде келесі сұрақтарға жауап алынды:
* _______________________________________________________________
* _______________________________________________________________
* _______________________________________________________________
Курстық ... ... ... ... балл (60 ... _______, ... ... (40 мүмкіндіктен ) __________ балл.
Сомалық баллы ____________
Жұмыстың бағасы ____________
Курстық жұмыстың жетекшісі ... ... ... ... ... ... ... күні ... ... ... ... ... ... машиналар мен жабдықтардың көбісінде басқару әрекеттері цифрлық аппаратурамен жүзеге асады. Басқаруды бір мақсатқа бағытталған ақпараттың өзгеруі деп қарастырғанда, мұндай аппаратура ... ... ... мүмкіндігін пайдаланады. Осы тұрғыдан қарағанда, курстық жұмысында ... ... ... ... мәселелерімен танысуға жол ашады.
Курстық жұмысында Ассемблер тілінде программалау, оның ішінде директиваларды және өрнектерді құрастыру мен пайдалану мәселелері, қарастырылған.
Көлемі 35 бет, 5 ... 4 ... ... ... ... мен ... ... тілінде программалау 9
* Директивалар 12
* ... ... ... і ... ... ... ...
ВСН 205-84
Технологиялық процестерді автоматтындыру жүйесінің электр ... ... ... ... ... және ... ... электр схемаларын орындау ережесі
ГОСТ 2.755-87
Сызбадағы шартты графикалық белгілер.коммутациялық және байланыс желілер.
ГОСТ ... ... ... ... және жоспардағы сымдар.
ГОСТ 2.601-95
Эксплуатациялық құжаттар (ЕСКД)
ФС ОҚМУ 4.6-002-2004 СМК
Оқу құжаттарын рәсімдеу ережелері. Графикалық құдаттарға қойылатын жалпы талаптар.
СНиП ... ... ... құрылғыларын техникалық пайдалану ережесі.
ТҚЕ
Тұтынушылардың электр құрылғыларын пайдалану кезінде техникалық қауіпсіздік ережелері
ВСН-329-78
Бақылау ... және ... ... ... мен жөндеу кезінде техникалық қауіпсіздігі бойынша нұсқаулық
Қолданылған қысқартулар мен белгілер ... - ... - ... ... ... өзектілігі.
Курстық жұмыстың өзектілігі тақырыб бойынша қарастылылған материалдардың микропроцессорлық техникада пайдалуымен анықталады.
Курстық ... ... мен ... микропроцессорлық техникадағы пайдаланатын құрылғыларды қолдану принциптеріне негізделеді.
Практикалық қажеттілігі.
Курстық жұмыстың практикалық қажеттілігі қарастырылған программалау принциетерімен ... ... ... ... және ... ... талаптарына сәйкеседі [1].
1. Ассемблер тілінде программалау
Ассемблер тілінде программалауды КР580 МП-ң мысалында қарастырайық [2,3,4].
Ассемблер тілінде келесі операторлар бар: бұйрықтық ... ... ... ... және ... ... ... операторларды транслятор МП бұйрықтарына аударады (нәтижесінде олар орындалады); ассемблер директиволар - ... ... ... ... модулі ассемблер тіліндегі операторлардың (немесе сөйлемдердің) тізбегі болып табылады. Олардың классификациялары:
* бұйрықтық операторлар, олар машиналық бұйрықтарына ассемблер арқылы ... ... ... мен (міндетті түрде емес) бір не екі операнд болады;
* программалық берілгендер үшін жады ұяшықтарын резервтейтін** берілгендерді тарату операторлары;
* ассемблер үшін ... ... бар ... ... ... жалған бұйрықтар).
Кейде берілгендерді тарату операторларын директиваларға жатқызады.
Операторлар форматы.
Операторлардың форматтары еркін, яғни оператордың кез-келген өрісі (бөлігі) жолдың кез-келген ... ... ... ... ... алдыңғысынан бір немесе бірнеше пробелмен (бос орындармен) бөлінуі керек.
Бұйрықтық операторлардың форматының түрі:
{Белгі:} {Префикс} Операция коды ... ... ... ... емес ... ... ... директивасы мен берілгендерді тарату операторларының форматы келесі:
{Аты} Директива ... ... аты ... қос ... ... Кейбір директивалар атының міндетті түрде болуын талап етеді, мысалы, SEGMENT, ENDS, PROC және ... ... ... ... ... ... бос ... керек, мысалы, NAME, ASSUME, ORG, PUBLIC және ... ... ... ... ... - ... (команданың) жазылуы, аталуы. Резервтеу** - кейінге сақтау
DB, DW, DD берілгендерді тарату операторларында аты міндетті емес.
Директива өрісі ассемблердің ... ... ... ... ... және оның ... ... әрекеттерін анықтайды. Директива операндтары бұйрықтық операндтарға ұқсас.
Ассемблер тілінде үйлескен қолдануды талап ететін өзара байланысқан үш директива жұптары бар:
SEGMENT/ENDS (сегмент/сегменнт ... ... ... ... ... соңы).
MACRO/ENDM (макробұйрықты анықтаудың басы/макробұйрықты анықтаудың соңы).
Операторлардың элементтері.
Операторлар келесілерден тұрады:
* маңызды сөздерден;
* идентификаторлардан (белгі мен айнымалы шамалардан);
* сандық тұрақты шамалардан (константалардан);
* ... ... ... символдардан;
* ескертулерден.
Маңызды (немесе кейінге сақталған сөз) сөздер ассемблер үшін мағынасы бар атау болып табылады. ... ... ... мен директивалар жазылуыларды (MOV, PROC, т.б.) алуға болады.
Идентификатор (белгілер мен айнымалылардың жалпы термині) - бұл ... ... ... ... Тізбектігі бірінші символ әріп немесе @, -, ? ... бірі ... ... бірақ жалғыз ? белгі идентификатор бола алмайды. ... ... ... ... ... не жолдық әріпінен, не болмаса @, -, ? арнайы символдардың бірімен басталуы мүмкін. Ассемблер идентификаторларды ... ... ... ... ... ... айнымалылар, белгілер, тұрақты шамалар) операнд туралы кейбір ақпаратты ассемблерге хабарлайтын тип атрибуты бар. Мысалы, авс типі ... ... жады ... ... емес, сандық тұрақты шама (константа) болып табылатындығын хабарлайды.
Ассемблер программист үшін МП регистрлерінің келесі жиынтығын анықтайды:
жалпылама BYTE типті - AL, AH, BL, BH, CL, CH, DL, DH ... WORD ... - AX, BX, CX, DX, SP, BP, SI, ... WORD ... - CS, DS, SS, ... шама - бұл ... аты бар программалық берілгендердің бірлігі. Айнымалы шаманың үш атрибуты ... ... (SEG) ... шамасы бар сегментті анықтайды;
* ығысу (OFFSET) айнымалы ... ол ... ... ... ... ... ... (диапазоны 0...65535) көрсетеді;
* тип (TYPE), айнымалы шаманы сақтауға бөлінетін жады бірлігін анықтайды, яғни 1 ... 2 ... 4 (екі ... ... ... ... шығаратын машиналық бұйрық форматын анықтау үшін қолданады.
Белгі - бұл ... ... жады ... ... және ... бұйрықтарында операнд ретінде қолдануға арналған атау. Белгінің 4 атрибуты бар:
* сегмент атрибуты (айнымалы шаманың осындай атрибутына ұқсас);
* ығысу атрибуты ... ... ... атрибутына ұқсас);
* қашықтық атрибуты (дистанция), тарату бұйрығы ... не ... ... (яғни екі байттық ығысу көмегімен басқару - NEAR типі), не өтпелі сегменттің ... ... ... ... ... ... ... - FAR типі) орналасқан белгіге ауысу мүмкіндігін анықтайды,
* CS сегменттік ... ... ... ... (1-ші ... кезінде ассемблер белгіні операнд ретінде кездестірсе, ол оның ығысуын білмейді. Ол оның орналасуы ... ... ... егер ... +- 128 байт ... екендігін білсе, жақын - NEAR, яғни SHORT.
Ассемблер егер келесі ережелердің бірі ... атты ... деп ... ... ... алдындағы атау қос нүктемен аяқталса, мысалы,
NED: NOP
* - атау LABEL ... ... ... ... ...
NED LABEL FAR
* атау EQU директивасының өрісінде орналасса, мысалы,
NED ... ... атау ... ... жұбы ... өрісінде орналасса, мысалы,
NED PROC NEAR
.
.
.NED ENDP
Сандық тұрақты шама (константа) - бұл ... ... ... ... ... ... сандық мән. Константа жады адресінен (белгі немесе айнымалы шама) санды анықтайтындығымен ерекшеленеді. Сандық константаларды негіздері 2(111001В), 8(16Q), 10(15 немесе 15D), 16(38Н, 0А3Н) ... ... ... ... Егер константа символдан басталса, онда сан нольден басталады (0А3Н). Барлық сандардың диапазоны 16-разрядты ... ... ... разрядты қосқанда) диапазонына сәйкес келеді. Теріс сандар қосымша кодта көрсетіледі. Сандық константалар ретінде бір ... (BYTE ... және екі ... (WORD ... ... ... болады, мысалы,
Ескерту. Трансляция* - программаны ассемблер тілінен машиналық кодтарына аудару процессі
NED EQU ... DX, ... ... DX ... 4142Н он ... санды жүктеуді қамтамасыз етеді (ASCII кодында А әрібінің коды 41Н, ал В ... - ... ... ... символдық константалар) - апострофтарға* кіргізіледі және әдетте максималды ұзындығы 255 символға дейін (жолды ... ... ... ...
FAM DB 'IVANOV'
Екіден көп символдары бар символдық тізбектер жадыны инициализациялау үшін ғана қолданады. Ассемблер тізбекті ASCII кодындағы тізбек символдарының кодталуына ... ... ... ... ... келтіреді.
2. Директивалар.
Айнымалы шамаларды анықтау директивалар [2,3,4].
DB, DW, DD директивалары.
Директиваларды қарастыруды DB (байтты анықтау), DW (сөзді анықтау), DD ( ... ... ... ... ... директиваларынан бастайық.
Директивалар форматы.
, []...
Директивалардың мнемокодтары айнымалы шамалардың типін анықтайды (байт, сөз, ... сөз). ... ... ... ... қанша байт, сөз, екілік сөз таратады және олардың бастапқы мәндері қандай болуы керектігін анықтайды. Айнымалы шаманың ... ... ол өзі ... сегмент болып табылады. Айнымалы шаманың ығысу атрибуты сегмент басынан айнымалы шаманың ... ... байт ... тең.
Бастапқы мән ретінде жады бірлігі үшін инициализация мәні бар өрнек болуы мүмкін. Өрнектер сандық және адрестік болуы мүмкін.
Ескерту! DB, DW, DD ... ... 386, 486, 586 ... үшін ... ... да ... - көрсеткішті анықтау - 32-разрядты көрсеткіш.
DF - алыс ... ... - ... ... - төрт есе ... ... (8 ... анықтау - нақты сандар.
DT - 10 байтты анықтау - BCD сандар.
Ескерту. Апостроф* - ... екі ... ... ... ... және инициализацияланбаған сөздер.
Егер айнымалы шамалардың бастапқы мәндері маңызды болмаса, онда оларды инициализацияланбаған айнымалы шамалар ретінде анықтауға болады.
stud db ? ; ... ... ... белгісіз мәнді сөз.
Үлкен инициализацияланған кеңістікті бөлігін резервтеу үшін жақшадағы ? белгісі бар DUP өрнектерді қолдану керек.
Bigbuf dw 1000 ... ... ... ... ... ... ... DW типті элементтерді ерекшелеу керекті жайлы ассемблер үшін ...
; ... ... dw 1000 ... ... мәні
Массив өлшемі
Ұяшықтар иници- ялизацияланбайды
1000 инициализацияланбаған DW типті элементтерді ерекшелеу керекті жайлы ассемблер үшін нұсқау
; 1000-байттық буфер
Программаны іске қосқанда осы ... ... ... ... белгілі бір мәндері жоқ байттардан тұрады. Инициализацияланбаған айнымалы шамаларды қолданудың басты себебі - ... ... ... ... болып табылады. Дискке қажетсіз байттарды жазудың орнына орындау кезінде инициализацияланбаған кеңістік бөлінеді. Ол үшін екі ережені ұстану керек:
* Барлық ... ... ... ... сегментінде соңғы етіп орналастыру.
* Инициализацияланбаған айнымалы шамалардың алдында UDATASEG директивасын қою. UDATASEG директивасын кезіктірісімен Turbo ... ... ... бұл ... ... ... беттен кейін орналастырады.
Мысалдар:
DATA SEGMENT
D0 DB 0F1H ;бір байт F1H-қа тең
D1 DW 4567H ;4567H-қа тең бір сөз
D2 DW D2 ;0003-ке тең бір ... DD ... ... ... DB 20DUP(?) ;мәні жоқ 20 байт
D5 DW 10DUP(0) ;он нольдік сөздер
DATA ENDS
0F1
67
45
03
00
D0
D1
D2
Жадыда бұл ... ... ... болады
0F1
67
45
03
00
D0
D1
D2
Жадыда бұл мысал келесі түрде болады
Атауы D2 DW директива ... тең ... ... - бұл сегмент басына қатысты D2 айнымалы шамасының ығысуы, яғни бұл директивадағы сөз сегменттегі айнымалы шаманың адресін ... ... ... ... сұрақ белгісі жады ұяшықтарының мазмұны директивада берілмейтіндігін білдіреді. DUP конструкциясы берілген жады бірліктерінің санын үлестіру мен инициалдау үшін ... DUP ... ... ретінде сандық және адрестік өрнектер, сұрақ белгісі, тізім немесе ... DUP ... ... ... ... ... директивасы жолдық айнымалы шамаларды жасай алса да, ассемблер тілінде жолдарды оқу мен жазу, символдарды жою, бір жолды ... ... үшін ... ... жоқ. Бұл ... ... көмегімен орындалуы мүмкін.
Бірнеше жолдық форматтар бар, мысалы:
ASCII$ - жол - бұл $ доллар ... ... ASCII - ... ... - жол - бұл нольдік байтпен аяқталатын ASCII ... ... - жол ... үшін DB ... ... ... db `Hello', '$'
str_$ db `Hello $'
ASCIIZ - жолдары көбірек таралған, олар да DB ... ... db ... 0
ASCII - жолдарының ұзындығы бір байттан мың байтқа дейін болуы мүмкін.
Жолдың бірінші ... - бұл не ASCII ... не ... ASCII ... деп те аталатын нольдік байт.
Егер бірінші символ 0-ге тең болса, онда жол нольдік, сондықтан нольдік ұзындықты айнымалы шамаларды жасау ... db 81 ... ... ... әдіспен жолды жасау кезінде, DUP санағышын жол әрқашан да аяқталатын нольге орын ... үшін осы ... ... ... ... санын 1-ге артық орнату керек.
Ескерту!
Тырнақшадағы тырнақша. DB ... ... ... ... не ... ('), не ... ('') алынуы мүмкін.
Жол ішіне тырнақшаны қосудың ең қарапайым әдісі барлық ... және оның жеке ... ... үшін ... әр ... ... қолданудан тұрады:
st1 db ' ″Керемет″ деді Иван', 0
st1 db ″ 'Бәрекелді' деді Григорий″, 0
Локальдық белгілер.
Белгілер глобальды және локальды болады. Глобальды белгілерге ... ... ... қол жеткізуге болады. Мұндай белгілер әрқайсысы әр түрлі болуы ... Бұл ... ... ... ... ... кедергі тудырады, мысалы,
CMP AX, 9 ;АХ=9?
JE SK егер АХ=9 болса, жолды өткізіп, төменге көшу.
ADD CX, ... ... 10 ... ... қысқа ауысулар, мысалы, JE, ассемблер тілінде программалау үшін өте жиі қолданылатын ауысулар ... ... ... ... басқа ешқандай бұйрықтар осы белгіге ауысуды орындамайды, демек, SK ... осы ... ... еш ... ... ... Мұндай ауысулар үлкен программаларда өте көп болуы мүмкін, сондықтан олардың әрқайсысына жаңа атау ойлап табу керек ... Мұны ... үшін TURBO ... ... ... ... ғана ... локальдық белгілерді жасауға мүмкіндік береді.
Локальдық белгілер олардың @@ екі белгісінен басталатындығын есептемегенде, кез-келген басқа белгілерге ұқсайды. Мысалы,
@@ ... ... ... ... ... ... ... белгіге дейін болады.
Мысалы:
JMP THERE ; Глобальдық белгіге ауысу
@@ 20: INC AX
CMP AX, 30
JE @@20; Жоғарыға локальдық ... ... AX, ... @@20; ... локальдық белгіге ауысу
XOR CX, CX
@@20:
Ассемблер тіліндегі массивтер*.
Ассемблер тілінде массивтерді сипаттау мен қолданудың арнайы бұйрықтары, құрылымдары немесе әдістері жоқ. ... ... ... ... ... ... ... сандардың массивін DUP операторын қолданып жасауға болады:
AR DB 10 DUP (?) - ; 10 бүтін сандар массиві.
10 ... ... ... ...
AR DB 0, 1, 2, 3, 4, 5, 6, 7, 8, ... элементтерден де массив жасауға болады, мысалы жолдардан:
AR DB 20 DUP(?), 0 ; AR [0]
DB 20 DUP(?), 0 ; AR [1]
DB 20 DUP(?), 0 ; AR ... ... ... ... ... ... жөн :
LABEL - белгі
REPT - қайталау
LABEL AR BYTE
REPT 100
DB 20 DUP(?), 0
ENDM
Бірінші жол BYTE типті AR ... ... ... ... да ... ... ... WORD, DWORD және тағы басқа.
LABEL директивасы ассемблерге келесі берілгендерді қалай адрестеуді көрсетеді. Жадыда ол ешқандай кеңістікті резервтемейді.
REPT директивасы ... бір сан рет ... ... ... ... ... ... (берілген жағдайда 100 рет). REPT пен ENDM (макро соңы) арасында орналасқанның барлығы осы ... ... сан рет ... ... ... ... әр ... өзгертудің ыңғайлы әдісін қарастырайық. Мысалы, он бүтін элементтен массив жасау мен ... әр ... 0-ден 9-ға ... ... беру үшін ... сипаттаманы қолдануға болады:
VAL = 0; мән беру директивасы
LABEL AR WORD
REPT 10
DW VAL
VAL = VAL+1; мән беру директивасы
ENDM
Массивтерді индекстеу.
Мәндерді оқу мен массивке жазу ... ... ... - ... ... ... аймағы
Мысалы, массивтің төртінші элементімен қалай қатынасуға болады? Ол үшін ассемблер тілінде массивтердің индекстері - ... ... ... ... ... ... массивке жазылған берілгендер типіне тәуелсіз, жеке мәндерді ... жеке ... ... екі ... келіп тіреледі:
* массив элементінің өлшемін I массив индексіне ...
* ... ... ... адресіне қосу.
Мысал. Байттардың қарапайым массивінде егер I=0 болса, онда I*1=0*1=0 плюс ar адресі (база) ... ar[0] ... ... ... ar[1] (I=1) ... ... базалық адрес плюс 1(I*1=1) адрес бойынша орналасқан.
Сурет 1. Массив индексті түрлендіру
Сонымен, ... ... ... жады ... түрлендіру керек. Мысал 1 суретте келтірілген.
Суреттен көретініміздей, 0 индексі 000D адресіне, яғни ... ... ... ... ... 1 ... 000E-ге, 2 индексі 000F-ке, осылайша 0014 адресі бар элементті анықтайтын 7 ... ... ... ... ... ... ... жұмыс.
TURBO ASSEMBLER IDEAL режимі.
DATASEG
AR DB 100 DUP(?)
CODESEG
MOV AL, [AR+63]; Массивтің 64-ші ... AL-ға ... ... массив индекстері етіп регистрлерді немесе жадыдағы айнымалы шамаларды қолданғанды жөн көреді. Адрестеудің базалық әдісі қолданылады, массив ... ... ВХ ... ... ... AL ... index индексі бар AR массивінің элементін жүктеу керек болсын. Мұны былайша істеуге болады:
DATASEG
INDEX DW ?
ARRAY DB 10 DUP(?)
CODESEG
MOV BX, [INDEX] ; индекс мәнін алу
MOV AL, ... AL;SIGN- ... ... VAL ... ... ... ... (128 модулі бойынша ;өйткені 300=256+44
Әдетте, * Record айнымалышамалар өрісі 0 мәнінде болады. Бұны өзгерту үшін өрістің ... ... ... және жаңадан қажетті мәнді қосу керек. Мысалы:
RECORD MINUSBYTE MSIGN: 1=1, MVAL:7=5
TURBO ASSEMBLER өрістер атауын глобальды, яғни ... және ... ... бөлігінде активті деп есептейді. Бірақ келешекте өрістер атаулары ... ... ... типін және бұл типтің бірнеше айнымалы шамаларын ... осы ... ... ... өрістерге жазу және олардан оқу үшін әртүрлі тәсілді қолдануға болады.
STRUCTURE (STRUC) ... ... ... ... ... ... ... тікелей енуді мен анықтамаларды қамтамасыз етеді. Бірдей атаулы ENDS және STRUC директивалары мен шектелген структура, шаблон (карта) ретінде болады. Осы ... ... ... атау мен ... (типі, ұзындығы, өлшемі) береді. Өрістер структурасының өлшемі ... ... сөз, ... ... ... ... әр структурадағы өріс DB, DW, DD директиваларымен ... ... ... өрісі жаңа типті берілгендер айнымалы шамаларын анықтау үшін қолданылады, оларды STRUC ... ... ... айнымалы шамалардың әр түрлі өрістерге назар аудыруы нүкте (.) ... ... ... ... ... ... ... жады бөлінбейді. Егер структура өрісінің аталуы базалық ... ... ... да болса, онда структура белгілі бір жады ... ... ... адрес ретінде айнымалы шаманың атауы немесе ВХ, ВР регисторлардың бірі болуы мүмкін.
Әртүрлі базалық ... ... ... ... әртүрлі жады аймақтарымен байланыстыруға болады.
Структураға тағы бір мысал келтірейік:
STRUC ... DB 1 ; КҮН ... - басы ... DB ? ; АЙ ... - мәні ... ... DW 2004 ; ЖЫЛ ... - бастапқы мәні 2004
ENDS DATE ; - ... ... ... * - орыс ... - по ... ... ... сиппаттау.
Структураларды қолдану үшін жадыда олардың өрістері үшін кеңістікті кейінге сақтап қою керек. ... ... ... ... ... шама ... Әр осындай айнымалы шаманың сипаты белгіден басталады, одан ... (DATE) ... ... ... және ... < > бұрыштық жақшада бастапқы мәндер тізімі тұрады. Структураны сиппаттау барысында ертеректе анықталған бастапқы ... ... ... ... бос қалдыру қажет.
Мысалы:
DATASEG
BIRTHDAY DATE < > ; ... DATE < 5,10> ; ... DATE< ... ; ... ... ... қолдану.
Структураның анықтамасында өрістер атауы болғандықтан оларды сұрау үшін, олардың атауымен қоса структураланған айнымалы шаманың атауын нүктемен бөліп қолдану қажет. Яғни TODAY ... ... үшін ... өріс ... беру ... оған ... ... MOV команда көмегімен тәуелдеп қоюға болады.
MOV [TODAY. DAY], 5 ;күнді ... ... ... ... ... жүктеуге болады Мысалы былай
MOV AX,[TODAY. YEAR] ; AX-ға ... ... ... ... TURBO ... ... IDEAL режиінде өрістер атауы олар анықталған структура үшін ... және ... ... ... ... ... бірдейі атауларымен STRUC анықтауларды құруға болады. Мысалы әрқайсысының құрамында DAY, MONTH, YEAR өрістері бар, екі әртүрлі струтураларын алуға болады. MASM ... ... ... істеуге болмайды, өйткені онда барлық өрістер атаулары глобальді, яғни бүкіл программа бойында тек бір структураның анықтамасында әр атаудың ... ... Осы ... MASM режимінде өрістердің бірдей атаулары бар екі структура болуы мүмкін ... IDEAL ... бұл ... ... ... қарапайымдау.
3. Өрнектер [2,3,4].
Адрестік және жолдық өрнектер.
Өрнектер операнд өрістерінің аса қиындау объектілері болып табылады.
Өрнектер, ассемблер тіліндегі рұқсат етілген ... ... ... және т.б.) ... осы ... бола ... элементердің жиынтығымен анықталады.
Өрнектердің маңызды элементтері екі класстың символдық атаулары болып табылады:
* Айнымалы шамалар және белгілер;
* Сандық ... шама - бұл жады ... аты ... оның ... ... болып саналады. Айнымалы шама берілгендерді тарату DB, DW,DD директиваларымен анықталады және 3 атрибуттан болады: сегмент, ығысу және тип.
Белгі - бұл жады ... аты ... оның ... машиналық команда болып саналады. Белгілер туралы келессін еске ... Жиі ... ... ... ... қос ... ... атымен анықталады. Бірақ белгілер аяқтаушы қос нүктесіз-ақ анықталады, мысалы LABEL дерективалармен және процедураларды анықтамаларында. Белгілерде төрт атрибут бар: сегмент, ... ара ... (NEAR ... FAR ... CS регистр жайлы болжамдар.
Сандық өрнектер EQU дерективалардың көмегімен символдық атаулар болып ... Осы ... ... ... ... да деп аталуы мүмкін. Сандық аталуы NUMBER (сан) типті алады. Символдық атауларына екі өрнек бөлінеді:адрестік және сандық
Адрестік деп жады ... ... және ... алу үшін ... ... ... Адрестік өрнектерде міндетті атрибуттары бар: сегмент, ығысу, тип. Адрестік ... әрі ... сан ... ал өрнектің өзі сан болмайды.
Сандық өрнек деп, ... ... сан ... болатын өрнекті айтады, мысалы, командада
MOV AL, MUR
MUR символдық атау адрестік өрнек болады, сондықтан бұл команда AL ригистрына MUR адресі бар жады ... ... ... AL, OFFSET ... OFFSET MUR ... ... ... OFFSET (ығысу) операторды қолданылады. Ол MUR адрестік өрнектің ығысуды саны түрінде қалыптастырады. Яғни, бұл ... AL ... MUR ... ... ... жүктейді.
Осылайша, берілгендер түрлендіруші командалардың операнд өрістерінде адрестік өрнекті ... ... жады ... ... операнд болады дегенді білдіреді. Басқаруды тапсыру командалар операндтарының өрістерінде, адрестік өрнек командаға кірістірілген өтуші ... ... ... ... ... ... мәні (сан) ... операндыға айналады.
Сегменттерді басқару директивалары.
SEGMENT/ENDS директивалары.
Еске түсірейік, физикалық адрес ығысудың қосындысы және ... ... 16 ... барысында қалыптасады. Сегменттік адрес келесі сегменттік регістрдің біреунде сақталады: CS (код ... ... DS ... ... ... SS ... ... үшін), ES (қосымша берілгендер үшін).
Код сегментінің структурасы келесі түрде:
SEGMENT []
Командалар және оларға қатысты директивалар.
ENDS
Атрибут тізімі міндетті ... ... ... ... модульдерден тұрса қажетті болады.
Берілгендер сегментінің структурасы келесі түрде:
SEGMENT []
Жадыны ... ... ... және ... ENDS ... ... кез ... идентификатор болуы мүмкін. Сегменттік регистрлар үшін сегментті тағайындау директивалармен жүзеге асады.
ASSUME директивасы.
Директива форматы келесі түрде болады:
ASSUME ,...,[],
Осы жерде SR ... ... ... ал ... мәні ... ... ... адрестелетін жады аймағының басын көрсетеді.
Код сегментінің анықталуының мысалы:
CODSEG SEGMENT ;COD сегментіне CS сегменттік
; ... ... CS: CODSEG, ... MOV AX, ... DS, AX
командалар және директивалар
CODSEG ENDS.
ASSUME директивасы сегменттік регистрларға ... ... ... CS ... ... регистрлерды жүктеу, анық таратулармен жүзеге асады, әдетте MOV командасымен. MOV ... ... ... ... ... бере ... әр ... екі команда қажет етіледі. DATSEG атауы айнымалы шама емес сегменттік атауы (тұрақты мәнді) болады, ... ... ... MOV ... онда ... ... ... операнд-көзі болатын командаға аударады.
Сегменттердің жадыда орналасуын байланыс ... ... ... онда ... ... операнд-көзін фактілі түрде қалыптастырады. Бір сегментті бірнеше сегменттік регисторларға тағайындауға болады.
Мысалы: ... CS: CODE, DS: ... DS ... ... ... ... ... жүзеге асады.
MOV AX; CS
MOV DS, AX
CS сегменттік регистр әдетте ... ... өту ... ... коды ... ... Егер ASSUME директивасы жоқ болса, онда жадыдағы айнымалы шамаға барлық сұрау салуда, жадыға нақтылы сұрау салу үшін базасы бар ... ... ... ... директивасы.
Ассемблердің неггізгі ішкі айнымалы шамасы болып, ассемблерлеу барысында программалық есептегіштік функциясына сияқты функцияны орындайтын, ұяшықтар есептегіші (адрестер) табылады.
Ұяшықтар есептегіші (санағышы) ... ... ... ... ... байт ... жады ұяшығының келесі адресін (дәлірек сегменттегі ығысуды) хабарлайды.
SEGMENT директивасының бірінші пайда болуы берілген атауы бар сегмент басын анықтайды. ... ... жаңа ... ... онда ... ... жүктеледі.
Берілгендерді орналастыруды нөлдік ұяшықтан емес, қажеттелетін ұяшықтан бастауға болады.
Ұяшық санағыштың өтпелі мәні ... ORG ... ... өзгертілуі мүмкін. Оның форматы
ORG
ORG директивасын орындау барысында өрнек мәні анықталады, ал нәтижесі ұяшық санағышына жүктеледі. Өрнекті есептеу 64К ... ... ... ... ... ... директивасы программистке жиі қолданылатын өрнектерге үшін символдық атауларды анықтауға мүмкіндік береді. Оның форматы:
EQU
... ... ... ... ...
* ... команданың мнемокодтарын.
өрісінде программалаушы өрнекті көрсету үшін қолданылатын атау бар. EQU директивасымен анықталған ... ... ... ... ... яғни атау тек бір EQU директивасында пайда болуы мүмкін. Мысалы:
CR EQU ODH; сандық константа
ADR EQU AR [SI]+3; ... ... EQU CX ; ... (жою, босату) директивасы - атау кестесінен атауды жою. ... ... осы ... ... ... ... Директиваның форматы
PURGE ,[]
PROC және ENDP процедуралардың директивасы.
PROC (procedure) директивасы процедураның кіріс нүктесін белгілейді, ал ENDP директивасы - ... ... ... ... ; үндемеу бойынша NEAR немесе FAR -
ENDP
Атау белгі болып табылады, ол процедураның кіріс ... ... ... типі NEAR ... FAR ... табылады (үндемеу бойынша NEAR типі қабылданады). Процедураны шақыру барысында, қайсы CALL командасын генерациялау керек, ассемблер процедура ... ... ... NEAR типі ... үшін ... ішкі сегменттік шақыру командасын генерациялайды. Процедураға сұрау салу кезінде стекке командалар есептегішінің құрамындағысы сақталады сосын қайта қалпына келеді, яғні FAR ... ... үшін ... ... ... ... ұзын ... генерациялайды, онда база және кіріс нүктесінің ығысуы бар. Бұл процедураға сұрау салу кезде стектің есінде CS және IP регистрының құрамындағысы ... ал одан ... ... ... тіліндегі процедуралардың іс-әрекетінің шектелген аймағы жоқ, яғни программаның кез-келген жерінен айнымалы шамаларға және процедура ішіндегі ... ... салу ... ... жөн ... PROC ... ... болған командалық тізбек, қате шығып қалған жағдайда процедура денесіне кіріп кетеді. Процедураның кездейсоқ, оның шақыруынсыз орындалып ... ... ... ... ... ... орналастыру қажет етіледі.
Кіріс параметрлары болып адрестер мен сандық мәндер болуы мүмкін. Процедураларға параметрлердің екі түрлі тарату әдісін келтірейік. Бір ... ... ... МП ... ... сұрау салу алдында орналастырылады. Басқа тәсілінде параметрлердің процедураларға берілуі стек арқылы ВР регистрының көмегімен ұйымдасады. ВР регистр үшін ... ... SS ... ... микропроцессор үшін ассемблер тілінде келесі келісімдерді ұстанған жөн.
-WORD типінің айнымалы шамасының мәні АХ аккумуляторына қайтады;
- BYTE типінің айнымалы ... мәні AL ... ... ... ... ... ВХ ... қайтады;
- ұзын нұсқаушы (база:ығысу) ES: ВХ регистрларында ... ... ... ... функцияларды атқарады, мысалы, процедураларда бірнеше кіріс нүктелерін қамтамасыз етеді немесе кез-келген жады ұяшыққа олардың құрамындағыларына және қолдану болжамына қарамастан атау ... ... Ол ... ... типі ... ... ... ал тип бірауызды атаудың мүмкін болатын қолдануына нұсқайды. Директива форматы:
LABEL
Тип түрінде, бес кілттік сөздердің біреуі басты ... BYTE, WORD, DWORD, NEAR, FAR. ... үш ... атау ... шама ... ... Айнымалы шамалар атауы берілгендермен операция жасайтын барлық командаларда болуы мүмкін, бірақ оларды басқаруды тапсыру командаларында қолдануға ... NEAR және FAR ... ... ... ... олар ... ... командаларында операнд болуы мүмкін, бірақ берілгендермен операция жасаушы командаларда болуы мүмкін емес.
Мысалы:
BUF LABEL WORD
DW 1234H
Бұл программа фрагменті директиваға ұқсас:
BUF DW 1234H
Келесі ... NED ... ... ретінде анықтайды:
NED LABEL NEAR
LABEL директивасы стек көрсеткішті (стек төбесі) анықтауға ыңғайлы, мысалы,
STACK_SEG SEGMENT WORD ... ... ... WORD ; стек ... ... 64 жады ... олардың инициализациясынсыз-резервтейді. LABEL директивасы STACK_SEG сегментінің басынан 64 ... ... ... ... VSTK атауын береді. STACK_SEG сегментінің басынан VSTK ығысу SP стек ... ... ... ... және ... ... ... байланыстыру директивасы.
Структуралық программалау кезінде күрделі программасы бірнеше автономды блоктарға (модульдерге) бөлінеді. Ассемблерде жазылатын модульді программа, бір бірінен ... ... ... ... ... ... ... тұруы мүмкін. Модульді программалау барысында бір программаға бөлек модульдерді біріктіруде қиындықтар туындауы мүмкін. Бұл үшін сәйкес ассемблер директивалары және құрастыруші ... ... ... атаулы арнайы программа қажет. Модульдердің бірігу мәселесінің бірі болып, берілген модульден басқа модульдердің аталған элементтеріне қарату ... ... ал ... ... ... ... ... элементтерге де қаратуы мүмкін болады (2. суретке қараңыз).
Модуль аралық сұрау салу көмегімен модульдер бір ... ... ... ... ... ассемблерлеу барысында объектілік модуль (объектілік файл) туындайды, оның құрамында модульаралық сұрау салу жайлы қызметтік ақпарат болады. Байланыс редакторы бұл ... ... ... ... ... ... ... біріктіру үшін қолданады, онда барлық модульаралық сұрау салулар ескерілген. Модульдер байланысының директиваларын қарастыру және сегменттерді қарастыруды PUBLIC және EXTRN директиваларынан ... 2. ... ... ... ... және EXTRN директивалары.
PUBLIC директивасы берілген модульде анықталған атауды глобальды деп хабарлайды, яғни басқа ... ... ... қол ... EXTRN директивасы, берілген модульде осы атау басқа орында анықталғанынын айтады, яғни берілген модульге сыртқы болып келеді. PUBLIC және EXTRN ... ... ... болады:
PUBLIC , атау ...
EXTRN , ...
Екі директивадағы атау EQU директивада анықталған айнымалы шаманың, белгінің немесе константаның ... ... ... ... ... тип болып BYTE, WORD, DWORD болуы мүмкін. Белгіге тип болып NEAR, FAR келуі мүмкін, ал ABS - ... үшін ... ... Берілген модульде анықталатын әр атау, PUBLIC директивасында тек бір рет көрсетілуі мүмкін. PUBLIC және EXTRN ... ... ... ... жөн деп ескеріледі.
EXTRN директивасындағы болатын тип басқа модульде анықталған атау типімен сәйкес келуі керек.
Мысалдар:
PUBLUC NED, MUR, ... IVN:FAR, ... ... сыртқы атауға сұрау салуды кездестірсе, онда ол ... ... ... ... ... типін ескере отырып), ал объектілік файлда осы туралы баға беріледі. Бірнеше объектілік файлдарды біріктіру барысында осындай бағалауды байланыс редакторы ... және оған ... ... атаулар жөніндегі ақпаратты қолдана отырып, қажетті адрестер немесе мәндерді қояды.
END ... ... ... ... ... деп нұсқау үшін, әр модуль осы директивамен аяқталуы тиісті.
END директивасы келесі форматта болады:
END []
Әрі бастапқы модульде тек бір END ... ... ... ... ... жолында). Іске қосқыш адрес ретінде программа басталып орындалатын команданың белгісі болады. Модульдерді біріктіру барысында тек бір (басшы) модульде іске ... ... ... ... ... бірктіру директивасы
Модульдерді бір программаға біріктіру барысында, әр модуль құралған логикалық ... ... ... ... Егер бұл ... ... онда басқаруды бір модульден басқаға тапсыру барысында, CS сегментті регистрының құрамындағысын, ал берілгендерге сұрау салу кезінде - DS ... ... ... ... ... ... ... барысында стекті ұйымдастыруда да қиындықтар туындайды. Сондықтан, егер ... ... ... ... ... ... 64 КБайт - тан аз болса, онда модульдердің кодтардың сегменттерін құрамындағы командаларға сүрау салу CS ... ... ылғи бір ... болғанда мұмкін болу керек.
Сол сияқты берілгендер ... мен стек ... ... ... ... ... ... бірігу әдістері тұралы қажетті ақпарат SEGMENT директивалар құрамында атрибуттар тізімі түрінде болады. SEGMENT директивасының толық форматы келесі ... ... ... [] ... ... ... бірдей атауы болуы керек. Директиваның операндтардың әр көрсетілген өрісі міндетті ... ... ... ... олар болған жағдайда, олар көрсетілген ретте жалғасуы керек.
Бірігу типтің ... ... ... .
Бірігу типі.
Бұл атрибут, берілген логикалық сегмент сондай атаулы бар басқа логикалық сегментпен, қандай ... ... ... ... Егер ... үшін бұл атрибут анықталмаған болса, онда сегмент тура ... ... ... ... десе бірікпеген де болып есептеледі. Бірігу типін қажет болғанда бірінші анықтау сегментінде көрсету керек. Келесі SEGMENT ... ... ... бар ... бұл ... ... ... Келесі бірігу типтері қолданылуы мүмкін:
PUBLIC, STACK, AT, COMMON, MEMORY.
PUBLIC атрибуттарында сегменттер бірінен кейін бірі орналасады. Бұндайда сегмент ішіндегі ... ... ... ... ... ... Ол ... сегменттерді, сегмент-регистрдың құрамындағысы ылғи бiр жанында болғанда, адрестеуге болады.
Сурет 3 Стек жады
STACK бірігу типі стек ... ... ... үшін қолданылады. STACK атрибуты бар сегменттер жады аймағының алынған өлшемі бірігетін сегменттер өлшемінің қосындысына тең болатындай бірігеді. STACK атрибутымен бірігетін әр ... ішкі ... ... ... коррекцияланады: әр сегменттегі соңғы байт (ең үлкен адресі бар байт) біріккен аймақтың соңғы байтымен сәйкес келу керек, яғни ... ... ... ... базалық адрестен басталады.
Сурет 4 Стек жады
АТ бірігу типтің конструкциясы
AT
Осы ... типі ... ... ... ... ... беруге, яғни сегментті жадының керекті аймағында анықтауға, мүмкіндік береді. Бұл ... мәні ... ... ... ... жүктеледі. Мысалы:
DISPLAY SEGMENT AT 0B800H
DISPLAY сегменттің базасы АТ 0В8000Н тең.
COMMON (ортақ) бірігу типі, сол ... ... ... ... ... аталған барлық басқа сегменттермен бірдей жады ұяшықтарын бөлетінін білдіреді.
COMMON атрибутына сәйкес MEMORY атрибуты жұмыс істейді, бірақ сол ... ... ... ... басқа сегменттерден кейін жадыда орналастырылады. Біріктірілетін модульдерде MEMORY атрибутты бір сегменті болуы тиіс
Түзету типі
Түзету типінің атрибуты (байт - BYTE, сөз - WORD, ... - PARA, ... - PAGE), ... ... ... ... анықтайды. Ассемблер оны объектілік файлда байланыс редакторымен сегменттерді түзетуге қолданатын қызметтік ақпаратты қалыптастыруға ... ... ... ... ... ... бастапқы адресін береді.
1) BYTE - кез-келген адрес - бір ... ... соң ... ... ... WORD - жұп адрес - алдыңғы адрестің қай жерде аяқталғанына қарамастан, барлығы жұп адрестен ... PARA - ... 16-ға ... 4 кіші ... ... тең.
4) PAGE - ... 256-ға бөлінеді, 8 бастапқы разрядтары нольге тең.
Класс атауы.
Бұл атрибут болғанда байланыс редакторы, кластары бірдей атаулы барлық облыстарды, ... ... Бұл ... физикалық жадыдағы кейбір (біріккен) аймақтардың бірінен соң бірінің орналасу керектігін нұсқайды. атрибуты, ... ... ... ылғі бір болған кезде, аймақтар адрестеуін қамтамасыз етпейді.
Бір кластың барлық сегменттері басқа кластың сегменттері жүктелуінің ... ... ... ... өзі ... ... алынуы тиіс. Класс атаулары регистр түрінің (жоғарғы немесе төмендегі, яғни бас әрiп немесе кiшi әрiп) есебінсіз қабылданады, бірақ егер ... ... /ML, ... /МХ, ... ... ... ... опциялар қолданғанда.
Бірдей атаулы класстар сегменттері бір класқа жатады және үздіксіз ... ... ... ... ... ... DATAX және DATAY екі сегмент 'DATA' класс типіні алады, яғни ... де ... ... ... ... ... көшіріледі.
Ешбір нақты жағдайда класс атауы болмайтын сегменттер, ... ... және ... ... ... бар ... сегменттермен үздіксіз блоктар ретінде жазылады. Кластағы барлық сегменттердің жалпы ... 64К ... ... (топ) ... - бұл ортақ базаны қолдану үшін біріктірілген программаланатын аймақтар жиыны., Топ, ... ... ... ... құралған, бөлек аймақтардан тұрады. Сондықтан, топ деп түсіндіріледі. GROUP директивасының ... ... ... ... ... үшін ... ақпараты келесі форматта болады.
GROUP , Сегмент атауы.....
Нұсқалған сегмент атауы SEGMENT директивасының көмегімен анықталған кез келген ... ... ... ... ... сол ... ... топтың сегмент жүктеуінің ретіне әсер етпейді.
Топта сегменттердің ... ... ... ... ... топқа жатпайтын сегменттер топқа жататын сегменттердің арасында жүктелуі мүмкін, бірақ жалғыз шарт - ... ... ... ... 64К ... ... ... атауларының ASSUME директивасымен қолданылуға болады.
Кез-келген бастапқы файлда топ атауы бір GROUP ... ... ... ... ... ... ... файл шегінде бір топқа бірнеше сегмент жатса, онда осы барлық сегменттер атауы сол бір GROUP ... ... ... ... ... ... 'DATA3'
SUM_C:
CSEG ENDS
LINK программа арқылы осы сегменттерді жүктеу реті 5 суретінде көрсетілген.
LINK бірінші ASEG-ті жүктейді, себебі ол бастапқы файлда ... түр. ... ... - CSEG, ... онда тура ... ... класстың типі. Ең соңында BSEG жүктеледі. Және ASEG пен BSEG бір ... ... ... ... Яғни SUM_A және SUM_B ... атау үшін ... осы ... басынан саналып бастайды. Ол ASEG сегменттің басы болады. SUM_C ... үшін ... CSEG ... ... есептеле бастайды.
Сурет 5 Сегменттерді жүктеу реті.
ПАЙДАЛАНЫЛҒАН ӘДЕБИЕТТЕР
* Б.С. Есмағамбетов. пәні бойынша 5В071900 мамандығы студенттеріне курстық ... ... үшін ... ... ... ... ОҚМУ баспа орталығы, Шымкент қ., Тауке хан д., 5
* Есмағамбетов Б.С. Басқару жүйелердргі микропро-цессорлық кешендер. Оқу құралы. ... , 2013, ... ... Б.С. ... құрылғылары және микропроцессорлар. Оқу құралы. Шымкент: баспасы, 2010, 184с
* Григорьев В.Л. ... ... ... - М.: ... ... ... и микроЭВМ.-М.: Высшая школа, 1989.

Пән: Информатика
Жұмыс түрі: Курстық жұмыс
Көлемі: 25 бет
Бұл жұмыстың бағасы: 700 теңге









Ұқсас жұмыстар
Тақырыб Бет саны
Ассемблер тілінде программалау27 бет
Ассемблер тілінде программалау жайлы ақпарат5 бет
Ассемблер тілінде программалау туралы ақпарат жайлы5 бет
Ассемблер тілінде программалау туралы мәлімет8 бет
AVR тегінденгі микроконтроллерларды пайдалану ерекшеліктері4 бет
Ассемблермен жұмыс5 бет
Информатика ( лекциялар )103 бет
«Ассемблер-күрделі машиналық тіл»27 бет
Жүйелік программалаудың негізгі ұғымдары мен анықтамалары туралы5 бет
Ассемблер тілі9 бет


Исходниктер
Пәндер
Көмек / Помощь
Арайлым
Біз міндетті түрде жауап береміз!
Мы обязательно ответим!
Жіберу / Отправить


Зарабатывайте вместе с нами

Рахмет!
Хабарлама жіберілді. / Сообщение отправлено.

Сіз үшін аптасына 5 күн жұмыс істейміз.
Жұмыс уақыты 09:00 - 18:00

Мы работаем для Вас 5 дней в неделю.
Время работы 09:00 - 18:00

Email: info@stud.kz

Phone: 777 614 50 20
Жабу / Закрыть

Көмек / Помощь