Історія створення монітора
Основні параметри, що визначають якість LCD-моніторів та екрану. Роздільна здатність дисплея телевізора або монітора персонального комп’ютера. АРІ–програмування в ОС Windows. Опис API функцій які використовуються в програмі для визначення параметрів.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | украинский |
Дата добавления | 15.09.2020 |
Размер файла | 1,0 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
4. Магда Ю.С. Ассемблер для процессоров Intel Pentium. -СПб.: Питер, 2006.
5. Пирогов В.Ю Асемблер для Windows. Изд. 4-е перераб. И доп. - СПб.: БХВ-Петербург, 2007.
6. Пирогов В.Ю. ASSEMBLER. Учебный курс. - М: Издатель Мологачева С.В., Издательство Нолидж, 2001.
7. Рудольф Марек. Ассемблер на примерах. Базовий курс. - СПб: Наука и техника, 2005.
8. Фельдман С.К. Системное программирование на персональном компьютере.
9. Юров В.И Assembler. Практикум. 2-е изд. - СПб.: Питер, 2006.
10. Юров В.И Assembler. Учебник для вузов 2-е изд. - СПб.: Питер, 2003.
Додаток А
монітор комп'ютер windows програмування
.model flat,stdcall
option casemap:none ; case sensitive
include \masm32\include\windows.inc
include \masm32\include\user32.inc
include \masm32\include\gdi32.inc
include \masm32\include\kernel32.inc
include \masm32\include\masm32.inc
includelib \masm32\lib\user32.lib
includelib \masm32\lib\gdi32.lib
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\masm32.lib
WinMain PROTO:DWORD,:DWORD,:DWORD,:DWORD
WndProc PROTO:DWORD,:DWORD,:DWORD,:DWORD
TopXY PROTO:DWORD,:DWORD
.data
hInstance dd 0
vidModeNum dd 0
nomoreflag dd 0
szClassName db "EnumDisplaySetting
s",0
szDisplayName db "EnumDisplaySettings",0
colorbits db " Color Bit Setting: ",0
pixelwidth db " Screen Pixel Width: ",0
pixelheight db " Screen Pixel Height: ",0
displayfreq db "Monitor Display Freq: ",0
modeindex db " Graphics Mode Index: ",0
ThatsAll db "Thats All Supported Graphic Modes!",0
HowToUse db "Left click mouse bottom to increment graphics mode index.",0
tempbuffer db 128 dup(0)
deviceInfo DISPLAY_DEVICE <>
vidModeInfo DEVMODE <>
lgfnt LOGFONT <14,0,0,0,FW_NORMAL,0,0,0,0,0,0,0,0,"Lucida Conso
.code
start:
invoke GetModuleHandle,0
mov hInstance,eax
invoke WinMain,hInstance,0,0,0
invoke ExitProcess,eax
WinMain proc hInst:DWORD,hPrevInst:DWORD,CmdLine:DWORD,CmdShow:DWORD
LOCAL wc:WNDCLASSEX
LOCAL msg:MSG
LOCAL hWnd:DWORD
LOCAL Wwd:DWORD
LOCAL Wht:DWORD
LOCAL Wtx:DWORD
LOCAL Wty:DWORD
mov wc.cbSize,sizeof WNDCLASSEX
mov wc.style,CS_HREDRAW or CS_VREDRAW or CS_BYTEALIGNWINDOW
mov wc.lpfnWndProc,OFFSET WndProc
mov wc.cbClsExtra,0
mov wc.cbWndExtra,0
mov eax,hInst
mov wc.hInstance,eax
mov wc.hbrBackground,COLOR_WINDOW+1
mov wc.lpszMenuName,0
mov wc.lpszClassName,OFFSET szClassName
invoke LoadIcon,hInstance,500
mov wc.hIcon,eax
invoke LoadCursor,0,IDC_ARROW
mov wc.hCursor,eax
invoke LoadIcon,hInstance,500
mov wc.hIconSm,eax
invoke RegisterClassEx,ADDR wc
mov Wwd,550
mov Wht,250
invoke GetSystemMetrics,SM_CXSCREEN ; get screen width in pixels
invoke TopXY,Wwd,eax
mov Wtx,eax
invoke GetSystemMetrics,SM_CYSCREEN ; get screen height in pixels
invoke TopXY,Wht,eax
mov Wty,eax
invoke CreateWindowEx,WS_EX_OVERLAPPEDWINDOW,
ADDR szClassName,
ADDR szDisplayName,
WS_OVERLAPPEDWINDOW,
Wtx,Wty,Wwd,Wht,
NULL,NULL,
hInstance,NULL
mov hWnd,eax
invoke ShowWindow,hWnd,SW_SHOWNORMAL
invoke UpdateWindow,hWnd
StartLoop:
invoke GetMessage,ADDR msg,0,0,0
cmp eax,0
je ExitLoop
invoke TranslateMessage,ADDR msg
invoke DispatchMessage,ADDR msg
jmp StartLoop
ExitLoop:
mov eax,msg.wParam
ret
WinMain endp
WndProc proc hWin:DWORD,uMsg:DWORD,wParam:DWORD,lParam:DWORD
LOCAL hDC:DWORD
LOCAL hFont:DWORD
LOCAL ps:PAINTSTRUCT
.if uMsg == WM_CREATE
mov deviceInfo.cb,SIZEOF deviceInfo
invoke EnumDisplayDevices,0,0,ADDR deviceInfo,0
mov vidModeInfo.dmSize,SIZEOF vidModeInfo
mov eax,OFFSET [deviceInfo.DeviceName]
invoke EnumDisplaySettings,eax,vidModeNum,ADDR vidModeInfo
.elseif uMsg == WM_LBUTTONDOWN
.if nomoreflag == 0
inc vidModeNum
mov eax,OFFSET [deviceInfo.DeviceName]
invoke EnumDisplaySettings,eax,vidModeNum,ADDR vidModeInfo
.if eax == 0
mov nomoreflag,1
dec vidModeNum
invoke MessageBox,hWin,ADDR ThatsAll,ADDR ThatsAll,MB_OK
.endif
.endif
invoke InvalidateRect,hWin,0,TR
.elseif uMsg == WM_PAINT
invoke BeginPaint,hWin,ADDR ps
mov hDC,eax
invoke CreateFontIndirect,ADDR lgfnt
mov hFont,eax
invoke SelectObject,hDC,hFont
invoke lstrlen,ADDR [deviceInfo.DeviceString]
invoke TextOut,hDC,20,20,ADDR [deviceInfo.DeviceString],eax
push esi
push edi
invoke TextOut,hDC,20,50,ADDR colorbits,22
mov esi,vidModeInfo.dmBitsPerPel
mov edi,OFFSET tempbuffer
invoke dwtoa,esi,edi
invoke lstrlen,ADDR tempbuffer
invoke TextOut,hDC,200,50,ADDR tempbuffer,eax
invoke TextOut,hDC,20,70,ADDR pixelwidth,22
mov esi,vidModeInfo.dmPelsWidth
mov edi,OFFSET tempbuffer
invoke dwtoa,esi,edi
invoke lstrlen,ADDR tempbuffer
invoke TextOut,hDC,200,70,ADDR tempbuffer,eax
invoke TextOut,hDC,20,90,ADDR pixelheight,22
mov esi,vidModeInfo.dmPelsHeight
mov edi,OFFSET tempbuffer
invoke dwtoa,esi,edi
invoke lstrlen,ADDR tempbuffer
invoke TextOut,hDC,200,90,ADDR tempbuffer,eax
invoke TextOut,hDC,20,110,ADDR displayfreq,22
mov esi,vidModeInfo.dmDisplayFrequency
mov edi,OFFSET tempbuffer
invoke dwtoa,esi,edi
invoke lstrlen,ADDR tempbuffer
invoke TextOut,hDC,200,110,ADDR tempbuffer,eax
invoke TextOut,hDC,20,130,ADDR modeindex,22
mov esi,vidModeNum
mov edi,OFFSET tempbuffer
invoke dwtoa,esi,edi
invoke lstrlen,ADDR tempbuffer
invoke TextOut,hDC,200,130,ADDR tempbuffer,eax
pop edi
pop esi
invoke lstrlen,ADDR HowToUse
invoke TextOut,hDC,20,180,ADDR HowToUse,eax
invoke DeleteObject,hFont
invoke EndPaint,hWin,ADDR ps
.elseif uMsg == WM_COMMAND
.elseif uMsg == WM_DESTROY
invoke PostQuitMessage,0
.else
invoke DefWindowProc,hWin,uMsg,wParam,lParam
ret
.endif
xor eax,eax
ret
WndProc endp
TopXY proc wDim:DWORD, sDim:DWORD
shr sDim,1
shr wDim,1
mov eax,wDim
sub sDim,eax
mov eax,sDim
ret
TopXY endp
end start
Размещено на Allbest.ru
Подобные документы
Основні блоки персонального комп'ютера та їх значення. Варіанти організації внутрішньомашиного інтерфейсу. Функціональна схема мікропроцесору. Види запам'ятовуючих пристроїв. Послідовність роботи блоків комп'ютера. Основні зовнішні та внутрішні пристрої.
курсовая работа [346,8 K], добавлен 05.01.2014Поняття та призначення технології скрінкастінгу. Огляд програм та сервісів для запису відео з екрану монітора. Основні концепції створення додатків у середовищі Wіndows. Особливості написання програм у середовищі Delphі. Програмна реалізація системи.
дипломная работа [8,5 M], добавлен 22.10.2012Системний блок як корпус, який містить основні компоненти персонального комп’ютера. Коротка характеристика головних зовнішніх та внутрішніх пристроїв персонального комп’ютера. Послідовність операцій при обтиску та обробленні роз'єму "витої пари".
лабораторная работа [1,7 M], добавлен 02.06.2011Загальна характеристика катодно-променевих моніторів, типи масок, принципи управління електронно-променевою трубкою. Історія розвитку рідкокристалічних моніторів та особливості їх роботи. Технологія виробництва плазмових екранів та їх параметри.
реферат [31,1 K], добавлен 31.01.2011Поняття комп'ютеру як універсальної технічної системи, спроможної виконувати визначену послідовність операцій певної програми. Програмні засоби, за допомогою яких визначають основні характеристики ПК. Утіліта EVEREST Home Edition 1.51, її призначення.
контрольная работа [403,0 K], добавлен 01.12.2009Постановка задачі: створення списку співробітників інституту. Аналіз мов програмування та вибір мови PascalABC.Net - 32-розрядної програми, яка може працювати на сучасних версіях Windows. Опис функцій та процедур, реалізації інтерфейсу користувача.
курсовая работа [277,8 K], добавлен 25.06.2015Синтез на основі поведінкового опису, виконаний розробниками на мові програмування класу HDL, як перспективний напрямок проектування цифрових пристроїв. Опис RISC-архітектури комп'ютерів. VHDL-модель прототипу RISC-комп'ютера. Основні модулі моделей.
курсовая работа [1,1 M], добавлен 23.01.2014Режими роботи з таблицями в Microsoft Access. Основні способи створення таблиць. Вимоги до технічних характеристик комп'ютера. Створення бази даних. Техніка безпеки та основні правила при виконанні робіт на комп'ютері. Порядок архівування роботи.
реферат [1,5 M], добавлен 23.12.2010Позитивні якості та недоліки плазмових моніторів. Сутність плазмового ефекту. Технологія капсульованого колірного фільтра та інші ноу-хау. Побудова та принцип роботи рідкокристалічного монітора. Функціональні можливості LCD-дисплеїв з активною матрицею.
реферат [22,0 K], добавлен 24.11.2010У наш час Windows ХР є найбільш сучасною настольною операційною системою. Windows ХР, яка займає серед настольних комп’ютерів долю у 84,56 % вимагає досить потужного комп’ютера. Порівняння інтерфейсу операційних систем Windows 98 та Windows ХР.
реферат [4,4 M], добавлен 24.06.2008