Муҳаммад ал-хоразмий номидаги тошкент ахборот технологиялари



Download 4,12 Mb.
Pdf ko'rish
bet94/116
Sana23.02.2022
Hajmi4,12 Mb.
#117967
1   ...   90   91   92   93   94   95   96   97   ...   116
Bog'liq
KIBER XAVFSIZLIK MUAMMOLARI VA ULARNING

References 
1. 
Виртуализация в высокопроизводительных вычислительных 
системах [Электронный ресурс] //Наука и Образование: науч.-техн. изд. – 
Режим доступа: http://technomag.edu.ru/doc/168323.html. – 26.04.2014. 
2. 
Виртуализация для хостинга: тупик или прорыв? [Электронный 
ресурс] //Администрирование серверов. Обслуживание компьютеров. – 
Режим доступа: http://ha-systems.ru/virtualizacija-dlja- hostinga. – 26.04.2014 
 
 
 


219 
НИЗКОУРОВНЕВОЕ ПРОГРАММИРОВАНИЕ 
ВЫЧИСЛИТЕЛЬНЫХ ПРОЦЕССОВ 
Ходиев Ш.И. 
Ташкентский университет информационных технологий имени 
Мухаммада Аль Хоразмий, aaaaa20@ramdler.ru  
Низкоуровневое 
программирование 
– 
это 
программирование, 
основанное на прямом использовании возможностей и особенностей 
конкретной вычислительной системы. Для того чтобы писать программы на 
этом уровне, необходимо знать архитектуру аппаратной части системы и 
языки низкого уровня. Отметим, что различают три разновидности 
низкоуровневых языков: машинный код; мнемокод; ассемблер.
В данной работе рассматриваются возможности языка низкого уровня 
для создания программ, когда необходимо учитывать также архитектуру 
аппаратной части. Работа написана на основе создания транслирующих 
систем и опыта ведения курсов по языкам и технологиям программирования. 
Практические возможности языка Ассемблер. Любая программа на 
языке 
самого 
высокого 
уровня 
по 
сути 
представляет 
собой 
последовательность машинных кодов. А раз так, то всегда остается 
теоретическая возможность написать ту же программу, но уже на языке 
ассемблера. Чем можно обосновать необходимость разработки Windows-
приложений на языке ассемблера? Приведем следующие аргументы: 
- язык ассемблера позволяет программисту полностью контролировать 
создаваемый им программный код и оптимизировать его по своему 
усмотрению; 
- компиляторы языков высокого уровня помещают в загрузочный 
модуль программы избыточную информацию, поэтому эквивалентные 
исполняемые модули, исходный текст которых написан на ассемблере, 
имеют в несколько раз меньший размер; 
- при программировании на ассемблере сохраняется полный доступ k 
аппаратным ресурсам компьютера; 
- приложение, написанное на ассемблере, как правило, быстрее 
загружается в оперативную память компьютера; 
- приложение, написанное на ассемблере, обладает, как правило, более 
высокой скоростью работы и ответа на действия пользователя [1,2]. 
В языке ограничены средства описания данных, обычные для языков 
высокого уровня. Номенклатура структур хранения данных архитектурно 
ограничена скалярами, векторами, списками, сетью. Но эти структуры 
хранения дают возможность представить в памяти машины практически все 
известные структуры представления. – массивы, записи, таблицы, стеки, 
очереди, деки, списки, деревья, графы. Тогда работа с ними позволяет 
разрабатывать и более сложные программы, к которым относится 
компиляторы, интерпретаторы. Поводом к их созданию отмечается 
необходимость 
создания 
препроцессора 
для 
новых 
команд 


220 
микропроцессоров. В работе [2] рассматриваются возможности работ со 
сложными структурами данных а также элементы компиляции.
Практикум 
работы 
на 
ассемблере 
включает 
возможности 
использования ассемблера для решения задач не только прикладного, но и 
системного программирования, создание полнофункциональных программ 
для современных операционных платформ.
Помимо 
программирования 
наиболее 
известных 
алгоритмов 
целочисленных арифметических действий, в том над многобайтными 
числами, преобразований чисел, интересных практических задач, проблем 
ввода вывода с клавиатуры и на экран, отметим также работу с файлами, 
программирование ХММ-расширений, реализация общей концепции типа 
данных, алгоритмы трансляции, которые в конечном итоге сводятся к 
работам со структурами данных. Интерес представляет и разработка 
динамических DLL библиотек.
Язык ассемблера содержит мощные средства поддержки модульного 
подхода в рамках структурного программирования. В языке ассемблера эта 
технология поддерживается в основном с помощью механизма процедур и, 
частично, механизма макроподстановок [3,4] 
Тематика и содержание учебной дисциплины. Содержание тем 
лекционных учебных занятий дисциплины по машинно-ориентированному 
языку программирования Ассемблер включает следующие. 1. Архитектура 
машины. Общий обзор машины. Архитектура микропроцессора. Структура и 
процесс обработки ассемблерной программы. Форматы команд. Адресация. 
Связь ассемблера с языками высокого уровня. Макросредства. Директивы 
повторения в макросах. Условные директивы. Способы использования 
макросов. 2. Синтаксис и семантика машинно-ориентированного языка. 
Структура программы. Типы данных. Директивы определения данных и 
сегментации. Операции и выражения. Ассемблирование и линковка 
программы. Интерфейс с языками высокого уровня. 3. Система команд 
машины. Режимы адресации. Команды пересылки данных. Арифметические 
команды. Команды изменения потока управления. Команды условных 
переходов. Команды для работы со строками и массивами. 4. Выражения и 
операторы в программах машинных кодов. Префиксная, инфиксная и 
постфиксная нотация выражения. Смешанная нотация. Присваивание. 
Порядок вычисления операндов в выражении. 5. Действия и операторы в 
программах. Базовые операторы. Операторы перехода. Поток управления. 
Составные операторы. Условные операторы. Вложенность условных 
операторов. Операторы выбора. Организация повторения операторов. 
Операторы циклов. 6. Функции (процедуры). Использование библиотек. 
Выполнение операций со стеком. Объявление и использование функций 
(процедур). Передача параметров. Рекурсия. 7. Практика использования 
машинно-ориентированного языка. Приемы работы со сложными типами 
данных. Макросредства. Оценка производительности программы. Доступ к 


221 
оборудованию. Интерфейс с операционной системой. Дизассемблирование и 
отладка. Идентификация ключевых структур языков высокого уровня. 
Для лабораторных занятий рекомендуются следующие: 1Вычисление 
простых 
формул 
на 
языке 
Ассемблер. 
2. 
Программирование 
разветвляющихся алгоритмов на языке Ассемблер. 3. Программирование 
циклических алгоритмов на языке Ассемблер. 4. Обработка одномерных 
массивов на языке Ассемблер. 5. Лабораторная работа № 6. Применение 
логических инструкций. Также: Разработка программ с использованием 
процедур 
и 
функций 
на 
машинно-ориентированном 
языке. 
Программирование 
задач 
на 
машинно-ориентированном 
языке 
программирования с организацией доступа к оборудованию. Логические 
команды, команды работы с битовыми полями и команды сдвигов. Команды 
передачи управления и специальные команды микроконтроллеров. Изучение 
программного обеспечения лабораторного стенда и системы команд 
микроконтроллера. Исследование устройства динамической индикации с 
применением AVR микроконтроллеров. 
Практическая часть может быть следующей. Разработать программу 
преобразования числа в двоичную форму представления, вывести число на 
экран. Разработать подпрограмму вычисления факториала числа. Вывести 
результат на экран. Разработать программу удаления во введённой строке 
пробелов, результат вывести на экран. Разработать программу определения 
чётности числа, результат вывести на экран. Разработать программу которая 
используя подпрограмму производит реверсирование элементов массива. 
Адрес массива и количество элементов в нём передаётся в подпрограмму 
через стек. 
Рекомендуемые темы для самостоятельного обучения: Архитектура 
компьютера. Архитектура микропроцессора. Строковые команды. Решение 
задач на использование строковых команд машинно-ориентированного 
языка. Система команд машины. Машинно-ориентированный язык. Массивы. 
Решение задач на использование массивов в машинно-ориентированном 
языке [2-5]. 

Download 4,12 Mb.

Do'stlaringiz bilan baham:
1   ...   90   91   92   93   94   95   96   97   ...   116




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish