Компьютерный форум NoWa.cc Здесь может быть Ваша реклама
Правила Форума
редакция от 22.06.2020
Форум .::NoWa.cc::.
Вернуться   Компьютерный форум NoWa.cc > В помощь вебмастеру > Программирование

Уважаемые пользователи nowa.cc. Мы работаем для вас более 20 лет и сейчас вынуждены просить о финансовой помощи по оплате за сервер.
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже.
Webmoney Webmoney WMZ: Z021474945171 Webmoney WME: E159284508897 Webmoney WMUSDT: T206853643180
Кошелёк для вашей помощи YooMoney 4100117770549562
YooMoney Спасибо за поддержку!

Ответ
 
Опции темы Опции просмотра Language
Старый 17.02.2009, 19:09   #1
Постоялец
 
Аватар для Ivan_32
 
Регистрация: 23.12.2007
Адрес: FFFF:64E9
Сообщений: 221
Репутация: 64
Unhappy Проблема с выделенной памятью

Код:
.586
.model flat,stdcall
option casemap:none

   include windows.inc
   include user32.inc
   include kernel32.inc
   include masm32.inc
   includelib masm32.lib
   includelib user32.lib
   includelib kernel32.lib
   dwtoa proto :DWORD,:DWORD
.data
fAddr DD 0
fLen DD 0
.data?
hBuff0 HANDLE ?
hBuff1 HANDLE ?
pBuff0 DWORD ?
pBuff1 DWORD ?
hProcess HANDLE ?
mbi MEMORY_BASIC_INFORMATION <>
.code
start:
INVOKE GlobalAlloc,GMEM_MOVEABLE OR GMEM_ZEROINIT,512
MOV hBuff0,EAX
INVOKE GlobalAlloc,GMEM_MOVEABLE OR GMEM_ZEROINIT,1024
MOV hBuff1,EAX

INVOKE GlobalLock,hBuff0
MOV pBuff0,EAX
INVOKE GlobalLock,hBuff1
MOV pBuff1,EAX


MOV EAX,OFFSET Func
MOV fAddr,EAX
MOV EBX,OFFSET FuncEND
SUB EBX,EAX
MOV fLen,EBX
INVOKE GetCurrentProcess
MOV hProcess,EAX
INVOKE ReadProcessMemory,hProcess,fAddr,pBuff0,fLen,0


XOR EAX,EAX
XOR EBX,EBX
XOR ECX,ECX
.WHILE ECX<512
	PUSHAD
	XOR EAX,EAX
	
	MOV AH,BYTE PTR[pBuff0+ECX]
	SHR AH,4
	.IF AH<10
		ADD AH,30h
	.ELSEIF AH>9
		ADD AH,37h
	.ENDIF
	MOV BYTE PTR[pBuff1+EBX],AH
	
	MOV AH,BYTE PTR[pBuff0+ECX]
	AND AH,00001111b
	.IF AH<10
		ADD AH,30h
	.ELSEIF AH>9
		ADD AH,37h
	.ENDIF
	MOV BYTE PTR[pBuff1+EBX+1],AH
	
	POPAD
 	INC EBX
 	INC EBX
	INC ECX
.ENDW
INVOKE GlobalUnlock,addr hBuff1
INVOKE MessageBox,0,ADDR pBuff1,0,0
INVOKE ExitProcess,0

Func PROC 
	RET
	DB 511 DUP(0)
Func ENDP
FuncEND:
end start
А вот результат выполнения:
[IMG]http://img12.**************/img12/345/fuckenmicrosoftpc3.jpg[/IMG]


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

Дополнительно дам свою конфигурацию:
Intel Core 2 E8200 2.66 @ 3.6 Ghz
Corsair XMS2 800Mhz 5-5-5-18 @900 5-5-5-15
Gigabyte GA-P35 DS3
__________________
Проблема есть следствие ее решения...
Чем больше я узнаю, тем больше чувствую себя дураком.
Ivan_32 вне форума
 
Ответить с цитированием Вверх
Здесь может быть Ваша реклама
Здесь может быть Ваша реклама


Реклама: Смерть единорога фильмшаровой клапан vai61.15-1.6Стиральная машина Samsung WW11BB944CGB/LDНасос Grundfos CRN 20-1купить ноутбук асус 17 дюймов


Ответ


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с оперативной памятью Original Компьютерные проблемы 354 26.06.2010 23:37
Проблема с оперативной памятью 4 планки по 1 гб pauliq Архив 8 29.01.2008 16:04
Проблема с оперативной памятью - help plz!!! Wintermoon Архив 5 09.12.2007 00:13
Железо-проблема с памятью GansKloss Архив 24 31.03.2006 02:42

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 00:21. Часовой пояс GMT +3.


Copyright ©2004 - 2025 NoWa.cc

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Время генерации страницы 0.04142 секунды с 11 запросами