![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 26.11.2012
Сообщений: 3
|
![]()
не получается произвести запись во встроенном ассемблере в с++ адрес памяти содержащемся в регистре
int _tmain(int argc, _TCHAR* argv[]) { char *c="qqqqqqqqqqqq"; int w=( int)c; _asm { push edi mov edi,w mov cl,66h mov byte ptr [edi],cl pop edi } printf(c); getchar(); return 0; }; выдается предупреждение при запуске в си. Unhandled exception at 0x00F2140B in ConsoleApplication1.exe: 0xC0000005: Access violation writing location 0x00F25858. если запускать скомпелированную программу то тоже выдает ошибку и вылетает а если задавать массив так char c[]="qqq"; int w=(int)&c[0]; то почему то работает Последний раз редактировалось sasha0705; 27.11.2012 в 18:35. Причина: дополнение вопроса |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
запись в память загружаемой dll | BBBW | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 6 | 20.04.2012 00:24 |
Запись в память! | VintProg | Общие вопросы Delphi | 2 | 29.05.2011 11:52 |
Запись файла-дампа процесса в память | InsteadOfMe | Помощь студентам | 8 | 05.04.2011 00:07 |
Чтение и запись в память чужого процесса | dacorp | Общие вопросы Delphi | 0 | 13.01.2011 22:39 |
Запись во flash память | valeologiya | Общие вопросы C/C++ | 12 | 20.10.2009 19:43 |