Читайте также:
|
|
Характеристик ЗП
Відеока́рта (графічна карта, графічний адаптер, графічний прискорювач (англ. videocard) — пристрій, призначений для обробки, генерації зображень з подальшим їх виведенням на екран периферійного пристрою.
Відеокарта зазвичай є платою розширення (дискретна відеокарта) і вставляється у слот розширення, універсальний (PCI-Express, PCI, ISA, VLB, EISA, MCA) або спеціалізований (AGP), проте відеокарта може бути вбудованою (інтегрованою) у материнську плату (як у вигляді окремого елементу, так і в якості складової частини північного мосту чипсету або ЦПУ).
Сучасні відеокарти не обмежуються лише звичайним виведенням зображень, вони мають вбудований графічний мікропроцесор, котрий може проводити додаткову обробку, звільняючи від цих задач центральний процесор. Наприклад, усі сучасні відеокарти NVIDIA і AMD (ATi) підтримують OpenGL на апаратному рівні. Останнім часом, разом зі зростанням обчислювальних потужностей графічних процесорів має місце тенденція використовувати обчислювальні можливості графічного процесору для вирішення не графічних задач (див. OpenCL).
Розглянемо приклад мовою Delphi визначення відеоадапдера:
procedure TfrmSysInfo.siInitVideoInfo;
var
c: string;
lpDisplayDevice: TDisplayDevice;
dwFlags: DWORD;
cc: DWORD;
iModeNum: DWORD;
lpDevMode: TdeviceMode;
tmpDC: HDC;
Selection, cxScreen, cyScreen, Resolution: DWORD;
f:boolean;
begin
dwFlags:= 0;
cc:= 0;
lpDisplayDevice.cb:= sizeof(lpDisplayDevice);
while EnumDisplayDevices(nil, cc, lpDisplayDevice, dwFlags) do
begin
Inc(cc);
ListBox2.Items.Add(lpDisplayDevice.DeviceString);
end;
{ Запам’ятовуємо поточні налаштування }
tmpDC:= getDC(Handle);
try
cxScreen:= GetSystemMetrics(SM_CXSCREEN);
cyScreen:= GetSystemMetrics(SM_CYSCREEN);
Resolution:= GetDeviceCaps(tmpDC, BITSPIXEL);
Label45.Caption:=IntToStr(GetDeviceCaps(tmpDC, PLANES));
// Label46.Caption:=IntToStr(GetDeviceCaps(tmpDC, NUMCOLORS));
Label51.Caption:=IntToStr(GetDeviceCaps(tmpDC, LOGPIXELSX))+' dpi';
Label52.Caption:=IntToStr(GetDeviceCaps(tmpDC, LOGPIXELSY))+' dpi';
Label53.Caption:=IntToStr(GetDeviceCaps(tmpDC, VREFRESH))+' Гц';
case Resolution of
8: c:= '256 кольорів';
15: c:= 'Hi-Color / 32768 кольорів';
16: c:= 'Hi-Color / 65536 кольорів';
24: c:= 'True-Color / 16 млн кольорів';
32: c:= 'True-Color / 32 біт';
end;
Label46.Caption:=c;
finally
ReleaseDC(Handle, tmpDC);
end;
iModeNum:=0; Selection:=0;
f:=true;
while f do
begin
f:=EnumDisplaySettings(nil, iModeNum, lpDevMode);
if (cxScreen = lpDevMode.dmPelsWidth) and
(cyScreen = lpDevMode.dmPelsHeight) and
(Resolution = lpDevMode.dmBitsPerPel) then
begin Selection:=iModeNum; end;
ListBox3.Items.Add(Format('%dx%d %d bit (%d Гц)',
[lpDevMode.dmPelsWidth,lpDevMode.dmPelsHeight,lpDevMode.dmBitsperPel,lpDevMode.dmDisplayFrequency]));
iModeNum:=iModeNum+1;
end;
if EnumDisplaySettings(nil, Selection, lpDevMode) then
begin
Label44.Caption:=IntToStr(lpDevMode.dmPelsWidth)+'x'+IntToStr(lpDevMode.dmPelsHeight);
Label47.Caption:=IntToStr(lpDevMode.dmBitsPerPel);
end;
end;
Дата добавления: 2015-07-08; просмотров: 156 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Функції BIOS для роботи з послідовним асинхронним адаптером | | | Правописание не с частями речи |