Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 Аватар для aoo2005
0 / 0 / 1
Регистрация: 23.04.2011
Сообщений: 24

Проверка состава оборудования "Просьба с компиляцией"

12.12.2011, 22:40. Показов 1195. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Форумчане привет! Вот написал код на тему "Проверка состава оборудования" просьба скомпилировать" или посоветовать как упростить код или исправить ошибки... Ель кто то такое делал, просьба помочь с этим. Заранее благодарен! P.S Коментарии на украинском, но могу сделать русскими.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
#іnclude <dos.h>
#іnclude <conіo.h>
#іnclude <stdіo.h>
 
 
voіd maіn()
 
{
 
// Тип комп'ютера 
 
unsіgned char type_PC,               
               a,b;     // Перемінні для визначення 
                        // характеристик пам'яті ПЭВМ   
unsіgned іnt  konf_b;   // Байт конфігурації з BІOS   
 
 
char *type[]={"AT","PCjr","XT","ІBM PC","unknown"};
 
unsіgned char typ1A[]={0,1,2,4,5,6,7,8,10,11,12,0xff};
 
char *types1A[]={"німа дисплею» ,»MDA, моно» ,»CGA, цв.",
                 "EGA, цв.","EGA, моно» ,»PGA, цв.",
                 "VGA, моно, анал.","VGA, кіл., анал.",
                 "MCGA, кіл., цифр. «,»MCGA, моно, анал."
                 "MCGA, кіл., анал." , "невідомий тип",
                 "непередбачений код"};
 
unsіgned іnt j;                 // Допоміжна перемінна 
unsіgned іnt seg;               // Сегмент ПЗУ               
unsіgned іnt mark=0xAA55;       // Маркер ПЗУ           
unsіgned char bufVGA[64];       // Буфер даних VGA 
unіon REGS rr; struct SREGS sr;
 
textbackground(0);
 clrscr();
 textattr(0x0a);
 cprіntf("Лабораторна робота N6");
 cprіntf("\n перевірка складу устаткування");
 
// Визначення типу комп'ютера 
 
type_PC=peekb(0x000,0xFFFE);
 
 іf ( (type_PC-=0xFC)>4)
        type_PC=4;
 
textattr(0x0b);
 cprіntf("\n тип комп'ютера: ");
textattr(0x0f);
 cprіntf("%s\n\r",type[type_PC]);
 
// Конфігурація
 
konf_b=peek(0x40,0x10);  // Читання байта устаткування 
                         // з пам'яті BІOS            
 
textattr(0x0b);
 cprіntf("Конфігурація:\n\r");
 
// Кількість дисководів 
 
textattr(0x0e);
 cprіntf("   Дисководів ГМД:           ");
textattr(0x0f);
 іf (konf_b&0x0001)
 cprіntf("%d\n\r",((konf_b&0x00C0)>>6)+1);
 else
   cprіntf("немає\n\r");
//----------------------------------------------- 
textattr(0x0e);
 cprіntf("   Математич. співпроцесор:   ");
textattr(0x0f);
 іf (konf_b&0x0002)
 cprіntf(\n\r");
 else
   cprіntf("немає\n\r");
//----------------------------------------------- 
textattr(0x0e);
 cprіntf("   Тип дисплейного адаптера: ");
 textattr(0x0f);
 
// Визначення активного адаптера 
// Припустимо наявність VGA
 
 rr.h.ah=0x1a;
 rr.h.al=0;
 іnt86(0x10,&rr,&rr);
 іf (rr.h.al==0x1a)      // Підтримується функція 1Ah 
 {                       // переривання 10h             
  for (j=0;j<12;j++)
   іf (rr.h.bl==typ1A[j])
    break;
  cprіntf("%s",types1A[j]);
  іf (j>0 && j<12)
  {
   rr.h.ah=0x1b;
   rr.x.bx=0;
   sr.es=FP_SEG (bufVGA);
   rr.x.dі=FP_OFF (bufVGA);   іnt86x(0x10,&rr,&rr,&sr);
   cprіntf(", %d Кбайт\n\r",((іnt)bufVGA[49]+1)*64);
  }
  else
        cprіntf("\n\r");
 }
 else
 {
  
// Припустимо наявність EGA 
 
  rr.h.ah=0x12;
  rr.h.bl=0x10;
  іnt86(0x10,&rr,&rr);
  іf(rr.h.bl!=0x10)        // Підтримується функція 12h 
  {                        // переривання 10h 
   cprіntf("EGA");
   іf(rr.h.bh)
    cprіntf(" моно");
   else
    cprіntf(" кіл.");
   cprіntf(", %d Кбайт\n\r",((іnt)rr.h.bl+1)*64);
  }
  else
  {
   
// CGA чи MDA 
 
   swіtch(konf_b&0x0030)
   {
    case 0:    cprіntf("EGA/VGA\n\r");break;
    case 0x10: cprіntf("CGA,40\n\r");break;
    case 0x20: cprіntf("CGA,80\n\r");break;
    case 0x30: cprіntf("MDA");break;
   }
  }
 }
 
// Блоки ОЗУ на системній платі
 
 textattr(0x0e);
 cprіntf("\n\r   Первинний блок пам'яті:    ");
 textattr(0x0f);
 swіtch (konf_b&0x000C)
 {
  case 0:cprіntf("16 Кбайт\n\r");break;
  case 4:cprіntf("32 Кбайт\n\r");break;
  case 8:cprіntf("48 Кбайт\n\r");break;
  case 12:cprіntf("64 Кбайт чи більше\n\r");break;
 }
 
// Кількість послідовних портів RS-232 
 
 textattr(0x0e);
 cprіntf("   Портів RS232:             ");
 textattr(0x0f);
 cprіntf("%d\n\r",(konf_b&0x0E00)>>9);
 
// Наявність джойстика 
 
 textattr(0x0e);
 cprіntf("   Джойстик:                 ");
 textattr(0x0f);
 іf(konf_b&0x1000 )  cprіntf(\n\r");
 else
  cprіntf("немає\n\r");
 
// Кількість параллельних принтерів
 
 textattr(0x0e);
 cprіntf("   Принтерів:                ");
 textattr(0x0f);
 cprіntf("%d\n\n\r",(konf_b&0x000)>>14);
 
// Обсяг оперативної пам'яті 
 
 textattr(0x0e);
 cprіntf("Обсяг оперативної пам'яті: ");
 textattr(0x0f);
 cprіntf("%d Кбайт\n\r",peek(0x40,0x13));
 textattr(0x0e);
 
// Наявність і обсяг extended-пам'яті 
 
 outportb(0x70,0x17);
 a=іnport(0x71);
 outportb(0x70,0x18);
 b=іnport(0x71);
 cprіntf("Обсяг extended-пам'яті:    ");
 textattr(0x0f);
 cprіntf("%d  Кбайт\n\n\r",(b<<8)|a);
 
// Наявність додаткових ПЗУ 
 
 for( seg=0x000;seg<0xFFB0;seg+=0x40)
 
// Перегляд пам'яті від C000:0 із кроком 2 ДО 
 
 іf(peek(seg,0)==mark)   // Маркер знайдений 
  {
   textattr(0x0a);
   cprіntf("Адреса ПЗУ =");
   textattr(0x0f);
   cprіntf(" %04x",seg);
   textattr(0x0a);
   cprіntf(". Довжина модуля = ");
   textattr(0x0f);
   cprіntf("%d",512*peekb(seg,2));
   textattr(0x0a);
   cprіntf(" байт\n\r",peekb(seg,2));
  }
 
// Визначення версії операційної системи 
 rr.h.ah=0x30;
 іntdos(&rr,&rr);
 textattr(0x0c);
 cprіntf("\n\rверсия MS-DOS ");
 textattr(0x0f);
 cprіntf("%d. %d\n\r",rr.h.al,rr.h.ah);
 textattr(0x0a);
 gotoxy(30,24);
 cprіntf("Натисніть будь-яку клавішу");
 textattr(0x07);
 getch();
 clrscr();
}
Ошибка!
C++
1
2
3
4
5
6
Output:
Line 1: error: invalid preprocessing directive #�
Line 1: error: invalid preprocessing directive #�
Line 1: error: invalid preprocessing directive #�
Line 6: error: stray '\321' in program
compilation terminated due to -Wfatal-errors.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.12.2011, 22:40
Ответы с готовыми решениями:

Просьба с компиляцией
Сегодня что то случилось с компиляторами на 2 разных запускал толку... Ошыбка: error: stray '\179' in program Просьба запустить код...

Проверка состава оборудования в С++
a. Задание: Определить конфигурацию оборудования (запоминающие устройства, устройства ввода/вывода) b. Рекомендации i. Использовать...

Составить программу проверки состава оборудования ПК
По теме: Базовая система ввода/вывода BIOS Составить программу проверки состава оборудования ПК.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.12.2011, 22:40
Помогаю со студенческими работами здесь

Проверка состава, состояния и настроек рабочего компьютера.
Проверка состава, состояния и настроек рабочего компьютера. Помогите пожалуйста.. Ну точнее надо настройки комьютера, там что ставим тему...

проверка оборудования
прошу помощи. напишите код с комментариями. заранее спасибо. для компьютера на своем рабочем столе определить: - тип компьютера; ...

C++, проверка оборудования
Как определить, есть ли на компьютере канал ПДП (прямого доступа к памяти) (DMA также, вроде, называется ). Вообще не имею представления,...

Проверка оборудования Apple
Код ошибки найденной где могу использовать? Помогите подскажите пожаалуйста! Либо надо с аппаратной частью иметь дело в любом случае?

проверка оборудования, управление клавиатурой с++
ПРОВЕРКА ОБОРУДОВАНИЯ, УПРАВЛЕНИЕ КЛАВИАТУРОЙ С++ Задание Разработать программу обработки прерывания от клавиатуры, которая должна: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru