Создание консольного приложения для операционной системы Windows. Установка операционной системой Unix

Страницы работы

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.

Содержание работы

Лабораторная работа № 3 Порядок выполнения л/р.

1)  Изучить:

ознакомиться с соответствующими темами "firststeps-mart 2003.chm" Библиотека Фроловых

2)  Выполнить письменно ответы на подготовительные вопросы

3)  Получить и выполнить индивидуальное задание. Задание включает:

решение индивидуального задания проведение исследования программы (порядок проведения см. л/р №1)

управление ходом компиляции проекта (подготовка makefile)

4) Защита.

Вопросы (письменно)

1.  Какие функции стандартной библиотеки работают с файлами.

2.  Приведите пример кода считывания и записи файла, используя стандартную библиотеку.

3.  Приведите пример кода считывания и записи файла, используя Win32API.

4.  Приведите пример кода считывания и записи файла, используя MFC.

5.  Приведите пример кода считывания и записи файла, используя C#.


Литература

1.  Глава 2, 3. Сетевые операционные системы / В.Г. Олифер, H.A. Олифер. - СПб.: Питер, 2002. - 544 с.

2.  Глава 5. Системное программное обеспечение / A.B. Гордеев, А.Ю. Молчанов. - СПб.: Питер, 2002. - 736 с.

3.  Глава 2. Столлингс Вильям. Операционные системы, 4-е издание. - M.: Вильямс, 2002. - 848 с. Дополнительно

1.  Глава 1, 4, 5, 8, 10. H. А. Олифер, В. Г. Олифер. Сетевые операционные системы // http://citforum.ru

2.  Глава 1, 10, 11, 12. Таненбаум Э. Современные операционные системы. - СПб.: Питер, 2002. -1040 с.


Лабораторная работа № 1 Порядок выполнения л/р.

1)  Изучить:

статью "Обзор Visual Studio 6.0" http://niikt.khstu.ru/syspo/introl.chm учебное пособие http://niikt.khstu.ru/syspo/tutorial 1 .chm учебное пособие http://niikt.khstu.ru/syspo/tutorial2.chm

2)  Выполнить письменно ответы на подготовительные вопросы

3)  Получить и выполнить индивидуальное задание. Задание включает:

решение задачи проведение исследования программы управление ходом компиляции проекта

4) Защита.

Ход выполнения индивидуального задания:

Пример: Рассматривается задача, в которой необходимо создать консольное приложения для операционной системы Windows. Программа должна на экране отобразить 10 строк "Hello, World!'VCpefla разработки: Visual C++ 6.0.

1)  Запустить среду Visual C++ 6.0.

2)  Меню File -> New. Ознакомиться какие варианты проектов существуют

3)  Написать код. Выбрали Win32 Console Application, присвоили имя проекту

#include "windows.h"

#include "stdio.h"

int main(int argc, char* argv[])

{

• for(register   i=10;   i;   i--)

printf("Hello World!\n"); return  0;

4) Компиляция приложения. В качестве исследования программы проведём сопоставление кода, полученного в результате компиляции(азт) и исходного кода(С++): Исследование можно проводить как встроенными средствами, так и средствами сторонних производителей (например, IDA)

Вариант 1 . Дизассемблер IDA

Дизассемблированный код программы (IDA)

Приложение на языке С++

.text:0040100D  loc_40100D .text:0040100D .text:00401010 .text':00401013 .text:00401016 .text:00401016  loc   401016 .text:00401016 .text:0040101A .text:0040101C

.text:00401021 .text:00401026 .text:00401029

;   CODE  XREF:   __main+29jj mov           eax,    [ebp+var  4] sub            eax,   1 mov            [ebp+var  4],   еах

;   CODE  XREF:      main+Btj cmp            [ebp+var  4] ,   0 jz-             short  loc  40102B push         offset  aHelloWorla ;      "Hello  World! \n" call            printf add           esp,   4 jmp            short  loc  40100D

for(register  i=10;   i;   i--) printf ("Hello World! \n");

Вариант 2. Среда Visual С++. Во время отладки используется меню View - Debug Windows - Dissasembly. Изучите все пункты меню View - DebugWindows

Дизассемблированный код программы (Visual С++)

Приложение на языке С++

0040D678   mov 0040D67F   jmp 0040D681   mov 0040D684  add 0040D687   mov 0040D68A   cmp 0040D68E   jge 0040D690   push 0040D695   call 0040D69A   add 0040D69D   jmp

dword ptr [ebp-4],0 main+2Ah (0040d68a) еах, dword ptr [ebp-4] eax,l dword ptr [ebp-4],eax dword ptr [ebp-4],OAh main+3Fh (0040d69f) offset string "Hello World! \n" (0042201c) printf (00401060) esp, 4 main+21h (0040d681)

for (register int i=0; i<10; i++) printf ("Hello World! \n");




Похожие материалы

Информация о работе

Тип:
Методические указания и пособия
Размер файла:
75 Kb
Скачали:
0

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.