purebasic.info

PureBasic forum
Текущее время: Вт янв 23, 2018 3:02 pm

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
СообщениеДобавлено: Пт май 20, 2016 4:44 am 
Не в сети
профессор

Зарегистрирован: Пн июл 22, 2013 11:00 pm
Сообщений: 552
Благодарил (а): 2 раз.
Поблагодарили: 30 раз.
Пункты репутации: 9
Получение информации о процессоре с помощью команды CPUID :roll:
Код:
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
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
 
 
 
Structure CPUINFO
eax.i
ebx.i
ecx.i
edx.i
EndStructure
 
Global CP.CPUINFO
Procedure initializeCPUID()
;
!PUSHFD           ; размещение регистра EFLAGS в стеке
!POP eax          ; извлечение значения EFLAGS в EAX
!MOV ebx,eax     ; сохранение значения в EBX
!XOR eax,200000h ; изменение 21-го бита
!PUSH eax         ; размещение нового значения в стеке
!POPFD            ; сохранение нового значения в EFLAGS
!PUSHFD           ; снова размещение EFLAGS в стеке
!POP eax          ; значение EFLAGS теперь в EAX
!XOR eax,ebx     ; проверка 21-го бита
!JE EXIT3     ; если он не изменился, то команда CPUID не поддерживается
;Есле поддерживается получаем сведения о процессоре
ProcedureReturn 1
!EXIT3:
ProcedureReturn 0
EndProcedure
Procedure CPUID(*CP.CPUINFO,i.i)
;
;!PUSHFD           ; размещение регистра EFLAGS в стеке
;!POP eax          ; извлечение значения EFLAGS в EAX
;!MOV ebx,eax     ; сохранение значения в EBX
;!XOR eax,200000h ; изменение 21-го бита
;!PUSH eax         ; размещение нового значения в стеке
;!POPFD            ; сохранение нового значения в EFLAGS
;!PUSHFD           ; снова размещение EFLAGS в стеке
;!POP eax          ; значение EFLAGS теперь в EAX
;!XOR eax,ebx     ; проверка 21-го бита
;!JE EXIT2     ; если он не изменился, то команда CPUID не поддерживается
;Есле поддерживается получаем сведения о процессоре
;
!PUSH eax
!PUSH ebx
!PUSH edx
!PUSH ecx
!mov dword edi,[p.p_CP+16]
!mov dword eax,[p.v_i+16]
!CPUID
!mov dword [edi],eax
!mov dword [edi+4],ebx
!mov dword [edi+8],ecx
!mov dword [edi+12],edx
!pop ecx
!pop edx
!pop ebx
!pop eax
;!EXIT2:
EndProcedure
Procedure TestBit_Memory_dword(*mem,Bit.i)
!push esi
!mov dword esi,[p.p_mem+4]
!mov dword eax,[p.v_Bit+4]  
!BT dword[esi],eax
!Jc mb;Переход, если бит равен 1
!pop esi
ProcedureReturn 0
!mb:
!pop esi
ProcedureReturn 1
EndProcedure
Procedure GetBity_Memory_dword(*mem,StarhyiBit.a,MladhyiBit.a)
!push esi
!push ecx
!mov dword esi,[p.p_mem+8]
!mov dword eax,[esi]
!mov byte cl,[p.v_StarhyiBit+8]
!neg cl
!add byte cl,31
!shl eax,cl
!shr eax,cl
!mov byte cl,[p.v_MladhyiBit+8]
!shr eax,cl
!pop ecx
!pop esi
 ProcedureReturn
EndProcedure
 
If initializeCPUID()
  ;
  CPUID(@CP,$80000000)  
  Debug "Максимальное значение $80000000-$8xxxxxxx,входного параметра для расширенной информации CPUID "+"$"+Hex(GetBity_Memory_dword(@CP\eax,31,0),#PB_Long)
  If GetBity_Memory_dword(@CP\eax,15,0)>0  
    ;
  s.s
   CPUID(@CP,$80000002)
     s=PeekS(@CP\eax,16,#PB_Ascii)  
   CPUID(@CP,$80000003)
     s+PeekS(@CP\eax,16,#PB_Ascii)
   CPUID(@CP,$80000004)
     s+PeekS(@CP\eax,16,#PB_Ascii)
    Debug s
   CPUID(@CP,$80000006)  
    Debug "Размер кэша строки в байтах: "+Str(GetBity_Memory_dword(@CP\ecx,7,0))  
    ;Debug "L2 ассоциативность поле кодировок*: "+Hex(GetBity_Memory_dword(@CP\ecx,15,12),#PB_Long)
    Select GetBity_Memory_dword(@CP\ecx,15,12)
    ;ЗАМЕТКИ:
    ;* L2 ассоциативность поле кодировок:
    ;00H - Отключено.
    ;01H - прямым отображением.
    ;02H - 2-полосная.
    ;04H - 4-полосная.
    ;06H - 8-полосная.
    ;08H - 16-полосная.
    ;0FH - Полностью ассоциативная.
      Case $00
        Debug "L2 ассоциативность поле кодировок(Отключено)"
      Case $01
        Debug "L2 ассоциативность поле кодировок(прямым отображением)"
      Case $02
        Debug "L2 ассоциативность поле кодировок(2-полосная)"
      Case $04
        Debug "L2 ассоциативность поле кодировок(4-полосная)"
      Case $06
        Debug "L2 ассоциативность поле кодировок(8-полосная)"
      Case $08
        Debug "L2 ассоциативность поле кодировок(16-полосная)"
      Case $0F  
        Debug "L2 ассоциативность поле кодировок(Полностью ассоциативная)"
     EndSelect  
    Debug "Размер кэша в единицах 1K: "+Str(GetBity_Memory_dword(@CP\ecx,31,16))
    ;
    CPUID(@CP,$80000001)
    Debug "Extended Processor Signature and Feature Bits: "+Str(CP\eax);+Str(GetBity_Memory_dword(@CP\eax,31,0))
    ;
    Debug "LAHF/SAHF available in 64-bit mode: "+Str(GetBity_Memory_dword(@CP\ecx,0,0))
    Debug "LZCNT: "+Str(GetBity_Memory_dword(@CP\ecx,5,5))
    Debug "PREFETCHW: "+Str(GetBity_Memory_dword(@CP\ecx,8,8))
    ;
    Debug "SYSCALL/SYSRET available in 64-bit mode: "+Str(GetBity_Memory_dword(@CP\edx,11,11))
    Debug "Execute Disable Bit доступен: "+Str(GetBity_Memory_dword(@CP\edx,20,20))
    Debug "1-ГБайт страницы доступны: "+Str(GetBity_Memory_dword(@CP\edx,26,26))
    Debug "RDTSC и IA32_TSC_AUX доступны, если 1: "+Str(GetBity_Memory_dword(@CP\edx,27,27))
    Debug "Intel® 64 Архитектура доступна, если 1: "+Str(GetBity_Memory_dword(@CP\edx,29,29))
    Debug "==========================================================="
  EndIf  
 
 
 
  CPUID(@CP,$00)
  Debug "Максимальное значение входного параметра для базовой информации CPUID"
  Debug "$"+Hex(CP\eax)
  Debug "Производитель процессора"
  Debug PeekS(@CP\ebx,12,#PB_Ascii)
  Debug "========================================="
CPUID(@CP,$01)
  Debug "Степпинг: "+Str(GetBity_Memory_dword(@CP\eax,3,0))
  Debug "Модель процессора: "+Str(GetBity_Memory_dword(@CP\eax,7,4))
  Debug "Семейство(Family ID): "+Str(GetBity_Memory_dword(@CP\eax,8,11))
  ;Debug "Тип процессора: "+Str(GetBity_Memory_dword(@CP\eax,13,12))
    Select GetBity_Memory_dword(@CP\eax,13,12)
      Case $00
        Debug "Тип процессора: Original OEM Processor"
      Case $01
        Debug "Тип процессора: Intel OverDrive® Processor"
      Case $02
        Debug "Тип процессора: Dual processor (not applicable to Intel486 processors)"
      Case $03
        Debug "Тип процессора: Intel reserved"
     EndSelect
 
 
 
 
  Debug "Модель процессора,расширенная: "+Str(GetBity_Memory_dword(@CP\eax,19,16))
  Debug "Family ID,расширенная: "+Str(GetBity_Memory_dword(@CP\eax,27,20))
 
 
 
 
  ;
  Debug "Бренд ID: "+Str(GetBity_Memory_dword(@CP\ebx,7,0));0=не поддерживается
  Debug "CLFLUSH (8 байт): "+Str(GetBity_Memory_dword(@CP\ebx,15,8))
  ;CLFLUSH (флеш строка кэша) инструкция записывает и аннулирует строку кэша, связанный с указанным линейным
  ;адрес. Недействительности для всех уровней иерархии кэш-памяти процессора, и транслируется по всему
  ;Кэш домена когерентность.
  ;ЗАМЕТКА
  ;CLFLUSH была введена с расширениями SSE2. Тем не менее, команда может быть реализована
  ;в IA-32 процессоров, которые не реализуют расширения SSE2. Обнаружение CLFLUSH с помощью функции
  ;бит (если CPUID.01H: EDX.CLFSH [19 бит] = 1).
 
 
  If TestBit_Memory_dword(@CP\edx,28)
  Debug "Максимальное количество адресуемых идентификаторов для логических процессоров в этом физическом пакете,доступных на аппаратной платформе Количество CPU: "+Str(GetBity_Memory_dword(@CP\ebx,23,16))
  ;ЗАМЕТКИ:
  ;*Ближайшее питания из-2 целое число, которое не меньше, чем EBX [23:16] это число уникальных начального APIC
  ;Идентификаторы зарезервированы для адресации различных логических процессоров в физическом пакете. Это поле действует только тогда, когда
  ;CPUID.1.EDX.HTT [28 бит] = 1
  EndIf
  ;
  ;
  Debug "Initial Apic ID: "+Str(GetBity_Memory_dword(@CP\ebx,31,24))
  ;
  Debug "Гипервизор: "+Str(TestBit_Memory_dword(@CP\ecx,31))
  Debug "RDRAND: "+Str(TestBit_Memory_dword(@CP\ecx,30))
  Debug "Команды преобразования с плавающей запятой 16-битовые(VCVTPH2PS и VCVTPS2PH): "+Str(TestBit_Memory_dword(@CP\ecx,29))
  Debug "Расширения инструкций(Поддерживаются инструкции AVX): "+Str(TestBit_Memory_dword(@CP\ecx,28))
  Debug "CR4.OSXSAVE,XGETBV/XGETBV Инструкции для доступа к XCR0: "+Str(TestBit_Memory_dword(@CP\ecx,27))
  ;Проблема XGETBV,убедитесь что XCR0 [2: 1] = '11b' (состояние XMM и состояние YMM включены ОС).
  Debug "CR4.OSXSAVE,Расширенные состояния XCRn , XGETBV , XSETBV , XSAVE (OPT) , XRSTOR : "+Str(TestBit_Memory_dword(@CP\ecx,26))
  Debug "AES NI расширений команд R0(инструкции VAESDEC/VAESDECLAST/VAESENC/VAESENCLAST/VAESIMC/VAESKEYGENASSIST на YMM)"+Str(TestBit_Memory_dword(@CP\ecx,25))
 
 
  Debug "Локальный таймер APIC,один выстрел с помощью Значение срок TSC: "+Str(TestBit_Memory_dword(@CP\ecx,24))
  Debug "Инструкция POPCNT: "+Str(TestBit_Memory_dword(@CP\ecx,23))
  Debug "Процессор поддерживает команду MOVE: "+Str(TestBit_Memory_dword(@CP\ecx,22))
  Debug "Процессор поддерживает функцию x2APIC: "+Str(TestBit_Memory_dword(@CP\ecx,21))
  Debug "Процессор поддерживает SSE4.2: "+Str(TestBit_Memory_dword(@CP\ecx,20))
  Debug "Процессор поддерживает SSE4.1.: "+Str(TestBit_Memory_dword(@CP\ecx,19))
  Debug "Поддерживает возможность предварительной выборки данных из запоминающего устройства: "+Str(TestBit_Memory_dword(@CP\ecx,18))
  Debug "Программное обеспечение может установить CR4.PCIDE 1: "+Str(TestBit_Memory_dword(@CP\ecx,17))
  Debug "Зарезервированный: "+Str(TestBit_Memory_dword(@CP\ecx,16))
  Debug "Производительность отладки Возможность MSR: "+Str(TestBit_Memory_dword(@CP\ecx,15))
  Debug "Контроль обновления xTPR,поддерживает изменение IA32 MISC ВКЛЮЧИТЬ [23 бит].: "+Str(TestBit_Memory_dword(@CP\ecx,14))
  Debug "Функция CMPXCHG8B /CMPXCHG16B : "+Str(TestBit_Memory_dword(@CP\ecx,13))
  Debug "Процессор поддерживает расширения FMA с использованием YMM состояния: "+Str(TestBit_Memory_dword(@CP\ecx,12))
  Debug "Процессор поддерживает IA32 отлаживает интерфейс MSR для кремния отладки: "+Str(TestBit_Memory_dword(@CP\ecx,11))
  Debug "Режим кэша L1 для данных,См определение IA32_MISC_ENABLE MSR бит 24: "+Str(TestBit_Memory_dword(@CP\ecx,10))
  Debug "Процессор поддерживает SSSE3: "+Str(TestBit_Memory_dword(@CP\ecx,9))
  Debug "Технология Thermal Monitor 2: "+Str(TestBit_Memory_dword(@CP\ecx,8))
  Debug "Усовершенствованная технология Intel SpeedSte: "+Str(TestBit_Memory_dword(@CP\ecx,7))
  Debug "(SMX)Более безопасные режим расширения,CR4.SMXE , GETSEC: "+Str(TestBit_Memory_dword(@CP\ecx,6))
  Debug "(VMX)Виртуальные машины расширений: "+Str(TestBit_Memory_dword(@CP\ecx,5))
  Debug "(DS-CPL )CPL-квалифицированное Debug Store: "+Str(TestBit_Memory_dword(@CP\ecx,4))
  Debug "Технология MONITOR / MWAIT: "+Str(TestBit_Memory_dword(@CP\ecx,3))
  Debug "Процессор поддерживает область DS с 64-битным макетом,64-разрядная DS Area: "+Str(TestBit_Memory_dword(@CP\ecx,2))
  Debug "Процессор поддерживает инструкцию PCLMULQDQ: "+Str(TestBit_Memory_dword(@CP\ecx,1))
  Debug "Процессор поддерживает SSE3: "+Str(TestBit_Memory_dword(@CP\ecx,0))
  ;  
  Debug "FPU с плавающей точкой Unit On-Chip.Процессор содержит x87 FPU: "+Str(TestBit_Memory_dword(@CP\edx,0))  
  Debug "VME-Virtual-8086 Улучшение режима: "+Str(TestBit_Memory_dword(@CP\edx,1))
  Debug "DE–Debugging(расширения отладки): "+Str(TestBit_Memory_dword(@CP\edx,2))
  Debug "PSE-Размер страницы Расширения: "+Str(TestBit_Memory_dword(@CP\edx,3))
  Debug "Счетчик TSC-Time Stamp: "+Str(TestBit_Memory_dword(@CP\edx,4))
  Debug "MSR-RDMSR и поддержка WRMSR: "+Str(TestBit_Memory_dword(@CP\edx,5))
  Debug "PAE-физических адресов: "+Str(TestBit_Memory_dword(@CP\edx,6))
  Debug "MCE–Machine Check Exception: "+Str(TestBit_Memory_dword(@CP\edx,7))
  Debug "CX8–CMPXCHG8B Inst: "+Str(TestBit_Memory_dword(@CP\edx,8))
  Debug "APIC-APIC на чипе: "+Str(TestBit_Memory_dword(@CP\edx,9))
  Debug "SEP–SYSENTER and SYSEXIT: "+Str(TestBit_Memory_dword(@CP\edx,11))
  Debug "Тип MTRR-памяти,Диапазон Регистры: "+Str(TestBit_Memory_dword(@CP\edx,12))
  Debug "PGE–PTE Global Bit: "+Str(TestBit_Memory_dword(@CP\edx,13))
  Debug "MCA–Machine Check Architecture: "+Str(TestBit_Memory_dword(@CP\edx,14))
  Debug "CMOV-Инструкция,Переместить/Сравнить : "+Str(TestBit_Memory_dword(@CP\edx,15))
  Debug "PAT-страница,Таблица атрибутов: "+Str(TestBit_Memory_dword(@CP\edx,16))
  Debug "PSE-36-Размер страницы Extension: "+Str(TestBit_Memory_dword(@CP\edx,17))
  Debug "PSN-Серийный номер процессора: "+Str(TestBit_Memory_dword(@CP\edx,18))
  Debug "CLFSH–CLFLUSH instruction: "+Str(TestBit_Memory_dword(@CP\edx,19))
  Debug "DS–Debug Store: "+Str(TestBit_Memory_dword(@CP\edx,21))
  Debug "ACPI-Thermal Monitor и часы Ctrl: "+Str(TestBit_Memory_dword(@CP\edx,22))
  Debug "MMX-Технология MMX: "+Str(TestBit_Memory_dword(@CP\edx,23))
  Debug "FXSR–FXSAVE/FXRSTOR: "+Str(TestBit_Memory_dword(@CP\edx,24))
  Debug "Расширения SSE-SSE: "+Str(TestBit_Memory_dword(@CP\edx,25))
  Debug "Расширения SSE2-SSE2: "+Str(TestBit_Memory_dword(@CP\edx,26))
  Debug "SS–Self Snoop: "+Str(TestBit_Memory_dword(@CP\edx,27))
  Debug "HTT-Многопоточность: "+Str(TestBit_Memory_dword(@CP\edx,28))
  Debug "TM-Термальный. монитор: "+Str(TestBit_Memory_dword(@CP\edx,29))
  Debug "PBE-Pend: "+Str(TestBit_Memory_dword(@CP\edx,31))
  ;В ожидании Перерыв Enable. Процессор поддерживает использование FERR # / PBE # булавкой, когда процессор находится в
  ;стоп-часы состояние (STPCLK # утверждается), сигнализируя процессору, что прерывание ожидает, и что
  ;процессор должен вернуться к обычному режиму работы для обработки прерывания. Бит 10 (РВЕ включить) в
  ;IA32_MISC_ENABLE MSR позволяет эту возможность
  ;===========================================================================================
  ;
  ;CPUID(@CP,$02)
 
 
 
 
 
 
 
 
EndIf
 



Последний раз редактировалось Сергейчик Сб май 21, 2016 4:13 pm, всего редактировалось 3 раз(а).

Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пт май 20, 2016 5:31 am 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6225
Благодарил (а): 16 раз.
Поблагодарили: 173 раз.
Пункты репутации: 48
Нормально. Только самого главное забыл - название процессора :D
Вот у немцев было лет 10 назад
Код:
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
;- Prozessor-String mittels CPUID direkt auslesen
;- erstellt einen UNICODE-String! (Oder, was ich dafür halte)
;- Also dementsprechende Einstellung vornehmen!
;- "Helle" Klaus Helbing, 25.06.2007, PB v4.02
 
Procedure Get_Prozessor_String_W(StringAdresse)
    !mov eax,80000000h       ;Test, ob CPU aktuell genug ist um den String zu liefern
    !cpuid
    !cmp eax,80000004h
    !jae @f                  ;alles o.K.
    !xor eax,eax             ;Rückgabewert = Null für eventuelle Auswertung Fehlschlag
  ProcedureReturn
!@@:
    !mov esi,[p.v_StringAdresse]
    !xor edi,edi
    !pxor xmm7,xmm7
!@@:  
    !mov eax,80000002h
    !add eax,edi
    !cpuid      
    !movd xmm0,eax
    !punpcklbw xmm0,xmm7     ;wenn die CPU obigen Test bestanden hat, sollte auch dies funktionieren (SSE2)
    !movq [esi],xmm0  
    !movd xmm0,ebx
    !punpcklbw xmm0,xmm7
    !movq [esi+8],xmm0        
    !movd xmm0,ecx
    !punpcklbw xmm0,xmm7
    !movq [esi+16],xmm0  
    !movd xmm0,edx
    !punpcklbw xmm0,xmm7
    !movq [esi+24],xmm0          
   
    !inc edi
    !cmp edi,3
    !je @f
    !add esi,32
    !jmp @b
!@@:
    !mov byte[esi+32],0      ;Zero-Byte; mal ganz vorbildlich, obwohl hier im speziellen Fall nicht nötig
    !mov eax,1               ;Rückgabewert <> Null für Erfolg
  ProcedureReturn  
EndProcedure
 
ProzessorString$ = Space(49) ;der String kann max.48 Zeichen lang sein plus ein Zero-Byte zum Abschluss
                             ;ich hoffe, das ist hier so richtig mit der Anzahl
Get_Prozessor_String_W(@ProzessorString$)
MessageRequester("Prozessor-String mittels CPUID auslesen - Unicode-Variante", ProzessorString$)



И ещё интересно, мой i3 на 2 ядра с твоим кодом превратился в 16-ядерный супер проц:
Цитата:
Количество CPU(ядер): 16

Достоверность остальной информации уже поставлена под сомнение!

_________________
read-only


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пт май 20, 2016 12:09 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11080
Благодарил (а): 4 раз.
Поблагодарили: 386 раз.
kvitaliy писал(а):
Вот у немцев было лет 10 назад
Не проще воспользоваться функцией PB?
Код:
1
MessageRequester("Prozessor-String mittels CPUID auslesen - Unicode-Variante", CPUName())


_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пт май 20, 2016 1:02 pm 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6225
Благодарил (а): 16 раз.
Поблагодарили: 173 раз.
Пункты репутации: 48
Пётр писал(а):
kvitaliy писал(а):
Вот у немцев было лет 10 назад
Не проще воспользоваться функцией PB?
Код:
1
MessageRequester("Prozessor-String mittels CPUID auslesen - Unicode-Variante", CPUName())


Оно конечно проще, но в ветке Программирование на FASM, CPUName() вроде как Off-topic :D

_________________
read-only


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пт май 20, 2016 3:56 pm 
Не в сети
профессор

Зарегистрирован: Пн июл 22, 2013 11:00 pm
Сообщений: 552
Благодарил (а): 2 раз.
Поблагодарили: 30 раз.
Пункты репутации: 9
kvitaliy писал(а):
Нормально. Только самого главное забыл - название процессора :D
Вот у немцев было лет 10 назад

Достоверность остальной информации уже поставлена под сомнение!


Достоверность в спецификациях http://www.intel.com/content/www/us/en/ ... nuals.html

У буржуев наверно видно что параметр команды на в ходе другой(типа с расширенной версии) и нет в коде инициализации(доступна ли команда для работы с ней). :D
PS:Я же написал в коде что далее много чего....(Добавил код в шапки вот там показывает проц). :roll:


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB