DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Звіт з розрахункової роботи з дисципліни Операційні системи

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКНІ
Факультет:
Комп’ютерні науки
Кафедра:
АСУ

Інформація про роботу

Рік:
2013
Тип роботи:
Розрахункова робота
Предмет:
Операційні системи
Група:
КН 2
Коротко про документ

Про що ця робота

У роботі наведено звіт з виконання розрахункової роботи з операційних систем. Написано програму мовою асемблера з використанням OpenGL.

У роботі розглядаються

  • Операційні системи
  • Мова асемблера
  • OpenGL
  • Тривимірна графіка
  • Програмування вікон
  • Обробка подій клавіатури

Зміст і розділи

  1. Ініціалізація OpenGL
  2. Головний цикл малювання
  3. Обробка клавіатури
  4. Малювання примітивів
  5. Висновок
Для кого:Студенти технічних спеціальностей та викладачі вищих навчальних закладів.
Викладачі:Зербіно Д.Д.

Ключові поняття

OpenGLВікноТуманБуфер глибиниПоворотМатриця проекціїКонтекстПодії

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки, молоді та спорту України Національний університет «Львівська політехніка» Кафедра АСУ Звіт З розрахункової роботи з дисципліни: Операційні системи Львів 2013 Код програми: format PE GUI 4.0 entry start include '..\include\win32a.inc' include '..\include\opengl_const.inc' include '..\include\opengl_macros.inc' start: xor ebx,ebx invoke ShowCursor,ebx push ebx push ebx push ebx push ebx invoke GetSystemMetrics,SM_CYSCREEN push eax invoke GetSystemMetrics,ebx push eax fild dword [esp] fidiv dword [esp+4] fstp [ratio] invoke CreateWindowEx,WS_EX_TOPMOST,szClass,szTitle,WS_VISIBLE+WS_POPUP,ebx,ebx invoke GetDC,eax xchg ebp,eax mov [pfd.dwFlags],PFD_DRAW_TO_WINDOW+PFD_SUPPORT_OPENGL+PFD_DOUBLEBUFFER mov [pfd.iPixelType],PFD_TYPE_RGBA mov [pfd.cColorBits],32 mov [pfd.dwLayerMask],PFD_MAIN_PLANE invoke ChoosePixelFormat,ebp,pfd invoke SetPixelFormat,ebp,eax,pfd invoke wglCreateContext,ebp invoke wglMakeCurrent,ebp,eax invoke glEnable,GL_DEPTH_TEST invoke glEnable,GL_LIGHT0 invoke glEnable,GL_LIGHTING invoke glFogi,GL_FOG_MODE,GL_EXP2 invoke glFogfv,GL_FOG_COLOR,fogColor invoke glFogf,GL_FOG_DENSITY,0.50 invoke glFogf,GL_FOG_START,1.0 invoke glFogf,GL_FOG_END,3.0 invoke glHint,GL_FOG_HINT,GL_NICEST invoke glClearColor,0.5,0.5,0.5,1.0 ;включим туман invoke glEnable,GL_FOG invoke glEnable,GL_COLOR_MATERIAL invoke glHint,GL_PERSPECTIVE_CORRECTION_HINT,GL_NICEST invoke glMatrixMode,GL_PROJECTION glcall gluPerspective,90.0,ratio,0.1,100.0 invoke glMatrixMode,GL_MODELVIEW .draw: invoke GetTickCount cmp eax,[msec] jz .draw mov [msec],eax invoke glClear,GL_COLOR_BUFFER_BIT+GL_DEPTH_BUFFER_BIT invoke glLoadIdentity invoke glTranslatef,ebx,ebx,-4.5 ;====================== Прописка під клавіатуру =================== invoke GetAsyncKeyState,VK_UP test eax,eax jz .UP invoke glRotatef,[theta],1.0,ebx,ebx .UP: invoke GetAsyncKeyState,VK_DOWN test eax,eax jz .DOWN invoke glRotatef,[theta],ebx,1.0,1.0 .DOWN: invoke GetAsyncKeyState,VK_SPACE test eax,eax jz .SPACE invoke glRotatef,[theta],ebx,ebx,1.0 .SPACE: invoke glTranslatef,1.0,-1.0,-1.0;центруем обєкт відносно осі z ;================================================================== ;початок малювання invoke glBegin,GL_QUADS ;нормаль 1-го чотирикутника invoke glNormal3f,ebx,1.0,ebx invoke glColor3f,1.0,ebx,ebx invoke glVertex3f,-1.0,-1.0,1.0 invoke glColor3f,ebx,0.4,ebx invoke glVertex3f,1.0,-1.0,1.0 invoke glColor3f,ebx,ebx,0.2 invoke glVertex3f,1.0,1.0,1.0 invoke glColor3f,1.0,1.0,ebx invoke glVertex3f,-1.0,1.0,1.0 ;нормаль 2-го чотирикутника invoke glNormal3f,ebx,ebx,-1.0 invoke glColor3f,ebx,ebx,1.0 invoke glVertex3f,-1.0,-1.0,-1.0 invoke glColor3f,ebx,0.1,ebx invoke glVertex3f,-1.0,1.0,-1.0 invoke glColor3f,1.0,ebx,ebx invoke glVertex3f,1.0,1.0,-1.0 invoke glColor3f,1.0,1.0,ebx invoke glVertex3f,1.0,-1.0,-1.0 ;нормаль 3-го чотирикутника invoke glNormal3f,ebx,1.0,ebx invoke glColor3f,ebx,1.0,ebx invoke glVertex3f,-1.0,1.0,-1.0 invoke glColor3f,1.0,1.0,ebx invoke glVertex3f,-1.0,1.0,1.0 invoke glColor3f,ebx,ebx,1.0 invoke glVertex3f,1.0,1.0,1.0 invoke glColor3f,1.0,ebx,ebx invoke glVertex3f,1.0,1.0,-1.0 ;нормаль 4-го чотирикутника invoke glNormal3f,ebx,-1.0,ebx invoke glColor3f,ebx,ebx,1.0 invoke glVertex3f,-1.0,-1.0,-1.0 invoke glColor3f,1.0,1.0,ebx invoke glVertex3f,1.0,-1.0,-1.0 invoke glColor3f,ebx,1.0,ebx invoke glVertex3f,1.0,-1.0,1.0 invoke glColor3f,1.0,ebx,ebx invoke glVertex3f,-1.0,-1.0,1.0 ;нормаль 5-го чотирикутника invoke glNormal3f,1.0,ebx,ebx invoke glColor3f,1.0,1.0,ebx invoke glVertex3f,1.0,-1.0,-1.0 invoke glColor3f,1.0,ebx,ebx invoke glVertex3f,1.0,1.0,-1.0 invoke glColor3f,ebx,ebx,1.0 invoke glVertex3f,1.0,1.0,1.0 invoke glColor3f,ebx,1.0,ebx invoke glVertex3f,1.0,-1.0,1.0 ;нормаль 6-го чотирикутника invoke glNormal3f,-1.0,ebx,ebx invoke glColor3f,ebx,ebx,1.0 invoke glVertex3f,-1.0,-1.0,-1.0 invoke glColor3f,1.0,ebx,ebx invoke glVertex3f,-1.0,-1.0,1.0 invoke glColor3f,1.0,1.0,ebx invoke glVertex3f,-1.0,1.0,1.0 invoke glColor3f,ebx,0.3,ebx invoke glVertex3f,-1.0,1.0,-1.0 ;кінець малюванняа invoke glEnd invoke wglGetCurrentDC push eax invoke SetTextColor, eax,0ffffh pop eax invoke TextOutA,eax,20,20,out_buf,10 invoke SwapBuffers,ebp invoke wglGetCurrentDC push eax invoke SetTextColor, eax,0ffffh pop eax invoke TextOutA,eax,20,20,out_buf,10 fld [theta] fadd [delta] fstp [theta] invoke GetAsyncKeyState,VK_ESCAPE test eax,eax jz .draw invoke ExitProcess,ebx delta dd 1.3 fogColor dd 0.5,0.5,0.5,1.0 szTitle db 'Розрахункова робота',0 out_buf db '[ім’я автора приховано]',0 szClass db 'edit',0 data import include '..\include\imports.inc' end data data resource end data msec dd ? theta dd ? ratio dq ? pfd PIXELFORMATDESCRIPTOR / / Висновок: під час виконання розрахункової роботи я навчилася працювати з OpenGL на мові Assembler .
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!