WMmail.ru - сервис почтовых рассылок

суббота, 24 апреля 2021 г.

RFpro.ru: Ассемблер? Это просто! Учимся программировать

  
Программирование подсознания на избавление от лишнего веса
  
  
Бесплатный видеосеанс "Маленький желудок Бесплатный видеосеанс "Маленький желудок
программа на похудание и чувствительность к сладкому

 
  
Subscribe.ru
RFpro.ru: Ассемблер? Это просто! Учимся программировать

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Лучшие эксперты в разделе

Лысков Игорь Витальевич
Статус: Мастер-Эксперт
Рейтинг: 0
• повысить рейтинг »
Evgen aka Chuma
Статус: 6-й класс
Рейтинг: 0
• повысить рейтинг »
cain52
Статус: 3-й класс
Рейтинг: 0
• повысить рейтинг »

• Assembler

Номер выпуска:1786
Дата выхода:24.04.2021, 15:45
Администратор рассылки:Зенченко Константин Николаевич (Старший модератор)
Подписчиков / экспертов:2 / 25
Вопросов / ответов:1 / 1

Консультация # 200646: Здравствуйте есть код на nasm который выводит сигнатуру процессора десятичным числом через фунцию call printf %u как мне вывести в двоичном числе? x86 nasm windows консоль.
Код
global main  extern printf  extern ExitProcess@4  segment .data 	Not_Supp	db	'CPUID not supported', 10, 0 	Supp		db	'CPUID supported', 10, 0 	Strl		db	'Number function: %d', 10 			db	'ID: %s', 10, 0 	ModelStr	db	'signature %u %Xh', 10, 0 	;Number		dd	0 	Buf			times 32 db 0 	Buf_Length	equ	$ - Buf - 1 				db	0 	endline db 13,10,'$'    			  segment .code main: 	pushfd 	pop eax 	mov ebx, eax 	xor eax, 200000h 	push eax 	popfd 	pushfd 	pop eax 	cmp eax, ebx 	jne CPUIDSupp 	push Not_Supp 	call printf 	jmp @exit CPUIDSupp: 	push Supp 	call printf 	mov eax, 0 	cpuid 	mov dword [Buf], ebx 	mov dword [Buf+4], edx 	mov dword [Buf+8], ecx 	push Buf 	push eax 	push Strl 	call printf  	;push 32 	;push dword 0 	;push Buf 	;call memset  	mov eax, 1 	cpuid          push eax 	push eax 	push ModelStr 	call printf   @exit: 	push dword 0 	call ExitProcess@4 

Дата отправки: 14.04.2021, 15:34
Вопрос задал: Степанов Иван /REDDS (4-й класс)
Всего ответов: 1
Страница онлайн-консультации »


Консультирует Зенченко Константин Николаевич (Старший модератор):

Здравствуйте, Степанов Иван /REDDS!

В строку преобразовывать не пробывали?

Зенченко Константин Николаевич


Смотрите код(FASM)
Код
format PE entry begin include 'WIN32AX.INC' section '.code' code readable executable begin:  mov     eax,1         cpuid         mov     ebx,eax         mov     edi,dbBin         mov     ecx,32         push    edi         push    eax         cld @@01:   xor     eax,eax         shl     ebx,1         adc     al,'0'         stosb         loop    @@01         xor     eax,eax         stosb         pop     eax         push    eax         push    eax         push    dbFormat         call    [printf]         xor     eax,eax         call    ExitProcess section '.data' data readable writable dbFormat        db      'signature hex= %x oct= %o bin=  %s this all',0 dbBin           db      32 dup(?),0 section '.idata' import data readable           library kernel, 'kernel32.dll',\                 msvcrt, 'msvcrt.dll'           import kernel,\                ExitProcess, 'ExitProcess'           import msvcrt,\                printf, 'printf'



Улачи!

Консультировал: Зенченко Константин Николаевич (Старший модератор)
Дата отправки: 23.04.2021, 18:09

5
Огромное спасибо за ответ и уделенное время.
-----
Дата оценки: 23.04.2021, 23:11

Рейтинг ответа:

НЕ одобряю +1 одобряю!


Оценить выпуск | Задать вопрос экспертам

главная страница  |  стать участником  |  получить консультацию
техническая поддержка

Дорогой читатель!
Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались. Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора - для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение. Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал, который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом. Заходите - у нас интересно!
МЫ РАБОТАЕМ ДЛЯ ВАС!


 
     Прошлые выпуски
RFpro.ru: Ассемблер? Это просто! Учимся программировать RFpro.ru: Ассемблер? Это просто! Учимся программировать RFpro.ru: Ассемблер? Это просто! Учимся программировать Все выпуски рассылки
 
Если выпуск не отображается, вы можете прочесть его на сайте

Это сообщение было отправлено на admin10383.deep@blogger.com потому, что вы подписались на рассылку comp.prog.assembler на subscribe.ru.
Чтобы гарантировать получение писем от нас — добавьте наш адрес в адресную книгу.

Вы можете отказаться от получения писем.

Архив рассылки Поддержка подписчиков

Это сообщение сформировано и выслано с помощью Sendsay.Ru

Комментариев нет:

Отправить комментарий