Ассемблер және макроассемблер тілдері

Ассамблер таңбалар (символдар)тілі бола отырып,белгілі бір дәрежеде машина тілінде программа жасаудағы кемшіліктерді жоюға мүмкіндік береді.
Ассамблер тілінде программаның барлық элементтері таңбалармен берілетіндігі оның басты артықшылығы болып табылады.Басқаша айтқанда ассамблер тілінің машина командаларының цифрлық кодтарын әріптермен немесе әріп-цифрлармен таңбалауға және деректердің таңбалық аттарын пайдалануға мүмкіндік беретіндігі оның машина тілінен айырмашылығы болып табылады. Ассамблер тілінің командаларын машина тіліне аударғанда машина командасын білдіретін әрбір оператор осы команданың цифрлық кодтарымен алмастырылады. Командалардың таңбалық аттарын олардың екілік кодтарына түрлендіру жұмысы программа жасаушы адамды өте қиын әрі күрделі машақаты көп жұмыстан босататын және бұл жағдайда құтиылоуға болмайтын қателіктерден құтқаратын арнайы программа-ассамблерге жүктеледі.
Ассамблер тілінде программалауда пайдаланылатын таңбалық аттар программаның семантикасын, ал команданың қысқартылып берілген атаулары оның негізгі функциясын білдіреді.Мысалы, ADD-қосу, SUB-азайту, PARAM-параметр т.с.с.Мұндай аттарды программа жасаушылар оңай есінде сақтайтын болады.
Ассамблер тілінде программа жасау үшін машина тілінде программа жасағандағыдан көп күрделі құралдар қажет болады:

· сыртқы құрылғылармен жабдықталған дербес компьютер;

· процессордың түріне қарай резиденттік немесе жүйелік программалар

Машина тіліне қарағанда ассамблер тілі едәуір күрделі, программаларды ұтымды жазуға және жөндеуге мүмкіндік береді.
Ассамблер тілі машинаға бағдарланған тіл, яғни процессордың әрбір командасына таңбалық ат меншіктейтіндіктен машина тіліне және процессордың құрылысына тәуелді тіл болып табылады.
Программа жасауда ассамблер тілі машина тіліне қарағанда программа жасаушылардың еңбек өнімділігін арттыруға сонымен бірге процессордың программалық және аппараттық ресурстарын толық пайдалануға мүмкіндік береді.
Бұл біліктілігі жоғары программалаушыларға жоғары деңгейлі тілдермен жасалған программамен салыс–тырғанда компьютердің жадында аз орын алатын жылдам жұмыс істейтін программалар жасауға мүмкіндік береді.
Ассамблер тілінің осындай артықшылықтарына байланысты ендіру-шығару құрылғыларын басқарушы программалар неше түрлі жоғары деңгейлі тілдердің көптігіне қарамай ассамблер тілінде жазылады.
Ассамблер тілінің көмегімен программа жасаушы адам мынадай параметрлерді бере алады:

· процессордың машина тілінің әрбір командасының таңбалық атын;

· ассамблер тілінде жазылған программалық қатардың стандартты пішімін;

· командалардың нұсқаларын және адрестеудің тәсілдерін қалай көрсету керектігі туралы пішімді;

· таңбалық тұрақтыларды және бүтін сандық тұрақтыларды әртүрлі санақ жүйелерінде көрсету үлгілерін;

· программалауды ассамблерлеу (транслациялау) процесін басқарушы пседокомандаларды.

Ассамблер тілі кез келген компьютерге түсінікті,өйткені басқа барлық тілдерге қарағанда машина тіліне ең жақын тіл ол ассамблер тілі. Бұл тіл копьютнрмен жақынырақ танысуға мүмкіндік береді. Сондықтан да ассамблерді оқу дегеніміз процессордың өзін оқып үйрену деген сөз. Ассемблер тілінде жазылған программа кез келген басқа тілдерде жазылған программаларға қарағанда өте тез орындалады. Мысалы, ассемблер тілінде жазылған программа дәл осы программаға баламалы СИ немесе Паскаль тілдерінде жазылған программалардан екі-үш есе, ал BASIC тілінде жазылған программалардан он бес және онда да көп есе тез орындалады.
Ассемблер тіліндегі программалар басқа тілдерде жазылған программаларға қарағанда өлшемі жағынан шағын болады, сондықтан компьютердің жадын үнемдеуге мүмкіндік береді.
Ассемблер тіліндегі программалар компьютердің барлық мүмкіндіктерін толық ұтымды пайдалануға сізге жол ашады.
Ассемблер тілін әрқайсысы машина командаларының бір тобына баламалы макрокомандалармен толықтыру жүйе қолданылады. Мұндай тіл макроассемблер тілі деп аталады. Макрокомандаларды пайдалану ірі құрылыс блоктарының программалар құруға мүмкіндік береді және ассемблер тілін жоғары деңгейлі тілдерге жақындатады.

Трансляторлар.Паскаль тілінде жазылған программа компьютерге түсініксіз болғандықтан, оны машина тіліне аудару керек болады. Программалау тілінен машина кодтарына аудару процесітрансляция(translation – аудару) деп аталады, ал аудару арнайы трансляторлардеп аталатын программалар арқылы орындалады.Трансляторлар үш түрлі болады, олар: интерпретаторлар, компиляторлар және ассемблерлер.Интерпретатордеп берілген программаның әр операторын өңдеп, орындайтын трансляторды атайды.Компилятор –берілген программаны толығымен машина тіліндегі модульге айналдырып, оны компьютердің жадына жазып барып орындайды.Ассемблерлеравтокодтар (ассемблер) тілінде жазылған программаны машина тіліне түрлендіреді.Кез- келген транслятор келесі мәселелерді қарастырады:Трансляция жасылып жатқан программаның синтаксистік қателерін тексереді, талдайды;Объекттік немесе қарапайым деп аталатын, копьютерге түсініқті болатын программаны жасайды;Компьютерлік жадының тиімді пайдалануын қадағалап байқайды (программаның әр үзіндісіне, айнымалыларға, тұрақтыларға, массивтерге жіне де басқа объектілерге өздеріне тән болатын жадының бөліктерін белгілейді).Машиналық командалармен жұмыс істеу көп еңбекті қажет ететін болғандықтан,бірінші буын ЭЕМ дері жарыққа шықаннан бастап ақ программа құруды жеңілдету жолы мен ЭЕМ нің өзі осы программаны машиналық тілге автоиатты түрде аударып,жадына енгізе алатын тәсілдерді іздестірген зерттеулер көптеп жүргізіле бастады.Осының нәтижесінде Осының нәтижесінде түрлі жоғарғы деңгейлі алгоритмдік тілдер мен оларды ЭЕМ арқылы машиналық тілге автоматты түрде аударатын транслятор «аударғыш» атаулы арнайы программалар пайда болды. Транслятор интерпретатор және компилятор деп аталатын екі түрі бар (interpretation – арадағы,түсініктілеу тілге аудару:compilation жинақтау,құрастыру).Интерпретатормен жұмыс істеу кезінде процессор оның прогрпммалау тілдерінен аударған кезекті әр операторын бірден орындайды. Компилятор алдымен программаның синтаксисін тексеріп,программада жіберілген синтаксистік қателерді хабарлайды.Олар жөнделген соң жүктеуші деп аталатын программасын іске қосады, ол алдымен программаны машиналық тілге жуық обьектілік программа деп аталатын аралық программаға түрлендіріп шығады.Одан әрі байланыстарредакторы деп аталатын программа іске қосылып,ол обьектілік программаға программалау тілі ішінде арнайы дайындалған кітапханалық процедуралардан қажетті стандартты процедуралар мен функцияларды қосады.Осыдан кейін программа дайын болады да,ол бірден орындалады.Үлкен ЭЕМ дер компилятормен жабдықталған,ІВМ РС ге үйлесімді дербес компьютердің екеуімен же жұмыс істеу мүмкіндіктері бар.

Наши рекомендации