Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на Assembler

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

Открыть новую тему     Написать ответ в эту тему

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обсуждаются все вопросы, связанные с программированием на Ассемблере как общего так и конкретного характера.
 
важное примечание
для тех кто считает, что здесь место халявных исполнений курсовых и лабораторных работ.
тут обычно помогают тем, кто сам хоть что-то пытается понять и сделать, но что-то не понимает, что-то не получается...
ведь ассемблер изучают и задачки на нём дают обычно не менеджерам по продажам и даже не всем физ.-мат. специальностям
вы сами избрали этот путь? вот и идите по нему сами, ножками... с ручками и с головой...
 
короче, тут не сборище придурков-альтруистов, которым нечего делать и они ждут-не дождутся когда вы их попросите
что-то сделать _за_ вас
если позарез надо и вы даже готовы заплатить, тогда вам сюда
удачи
 
некоторые ресурсы
http://www.wasm.ru/ Самый популярный русскоязычный ресурс. https://wasm.in/
Ассемблер - книги (ASM, Assembler)
 
Просьба все большие листинги оформлять тегом more.
 
если вам вдруг не отвечают или ответ вас не устраивает
и вообще полезно прочитать всем спрашивающим

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 01:42 29-11-2006 | Исправлено: akaGM, 17:44 11-06-2020
yse

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
format  pe gui 4.0<-  это и есть фасм компилятор совсем не масм

Всего записей: 36 | Зарегистр. 29-07-2011 | Отправлено: 14:08 31-10-2011
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
все равно вместо message надо offset message
 
Добавлено:
в твоем случае береться первые два байта из строки message и по этому адресу апи функция пытается выдать строку до первого нуля. а надо чтоб по адресу строки

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 14:15 31-10-2011
yse

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
спасибо .bomzzz
 
вот  тоже самое пробовал скомпелить в бенарном виде всеровно какой компилятор но я делал на фасм просто быстрее ,
но наверное и за команды моv и прибавляются лишнии нули или может и за команды int прерывание
 
 
msg     db    "Hello, world!"    ; the string
 
 
 
_start:
 
; write() call
 
 mov eax, 4        
 mov ebx, 1        
 mov ecx, msg      
 mov edx, 13      ; поместить 13 в edx, так как наша последовательность составляет 13 байтов
int 0x80         ; Позвонить ядру, чтобы заставить системный вызов произойти
 
; exit() call
 
 mov eax,1      
 mov ebx,0      
int 0x80

Всего записей: 36 | Зарегистр. 29-07-2011 | Отправлено: 14:42 31-10-2011
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
и скорее всего попадает в защищенную область другого процесса
 
Добавлено:
даже точнее в hell попадает.
 
так это у тебя теперь 16 битный асм
 
Добавлено:
http://www.emu8086.com/ емулятор скачай тут есть пример для хело ворд и даже не один для фасма подойдет как раз

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 14:43 31-10-2011
yse

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
супер bomzzz

Всего записей: 36 | Зарегистр. 29-07-2011 | Отправлено: 15:28 31-10-2011
MERCURY127



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bomzzz, чтоб не работало под волком:
INT 21 - Volkov Commander - INSTALLATION CHECK
    AH = 2Bh
    CX = 5643h ('VC')
    DX = 4F4Dh ('OM')
    AL = function number
        00h get left window data address
        01h get right window data address
        02h get address of general variables
Return: AL = 00h if Volkov Commander installed
        AH = version code (27h for v4.00.039)
        ES:BX -> requested data
 
 
Добавлено:
в своем обработчике это вызываешь и проверяешь...

Всего записей: 11564 | Зарегистр. 03-08-2008 | Отправлено: 15:40 31-10-2011
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
интересненько. только все равно не только в волкова упор, остальные программы тоже могут использовать служебные клавиши. редактор какой нибуть. если перехватить инт9 то это уже глобально, так как прерывание биос. для контрал альт дел это подходит, а ansi.sys видимо как то по другому делает. вот думаю может инт 16 а может нет. ниче нагуглить не могу
 
Добавлено:
а как скомпилировать драйвер sys чтоб его ставить через конфиг.сис?

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 15:43 31-10-2011
yse

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
вот Hello, world MessageBox Shellcode на всех осях работает компелим запускаем  
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
  #include <iostream>
#include <windows.h>
 
int main(){
    unsigned char shellcode[]=
    "\xFC\x33\xD2\xB2\x30\x64\xFF\x32\x5A\x8B"
    "\x52\x0C\x8B\x52\x14\x8B\x72\x28\x33\xC9"
    "\xB1\x18\x33\xFF\x33\xC0\xAC\x3C\x61\x7C"
    "\x02\x2C\x20\xC1\xCF\x0D\x03\xF8\xE2\xF0"
    "\x81\xFF\x5B\xBC\x4A\x6A\x8B\x5A\x10\x8B"
    "\x12\x75\xDA\x8B\x53\x3C\x03\xD3\xFF\x72"
    "\x34\x8B\x52\x78\x03\xD3\x8B\x72\x20\x03"
    "\xF3\x33\xC9\x41\xAD\x03\xC3\x81\x38\x47"
    "\x65\x74\x50\x75\xF4\x81\x78\x04\x72\x6F"
    "\x63\x41\x75\xEB\x81\x78\x08\x64\x64\x72"
    "\x65\x75\xE2\x49\x8B\x72\x24\x03\xF3\x66"
    "\x8B\x0C\x4E\x8B\x72\x1C\x03\xF3\x8B\x14"
    "\x8E\x03\xD3\x52\x33\xFF\x57\x68\x61\x72"
    "\x79\x41\x68\x4C\x69\x62\x72\x68\x4C\x6F"
    "\x61\x64\x54\x53\xFF\xD2\x68\x33\x32\x01"
    "\x01\x66\x89\x7C\x24\x02\x68\x75\x73\x65"
    "\x72\x54\xFF\xD0\x68\x6F\x78\x41\x01\x8B"
    "\xDF\x88\x5C\x24\x03\x68\x61\x67\x65\x42"
    "\x68\x4D\x65\x73\x73\x54\x50\xFF\x54\x24"
    "\x2C\x57\x68\x4F\x5F\x6F\x21\x8B\xDC\x57"
    "\x53\x53\x57\xFF\xD0\x68\x65\x73\x73\x01"
    "\x8B\xDF\x88\x5C\x24\x03\x68\x50\x72\x6F"
    "\x63\x68\x45\x78\x69\x74\x54\xFF\x74\x24"
    "\x40\xFF\x54\x24\x40\x57\xFF\xD0";
 
   
 
    system("PAUSE");
 
    ((void (*)())shellcode)();
 
    return 0;
}

Всего записей: 36 | Зарегистр. 29-07-2011 | Отправлено: 16:05 31-10-2011
MERCURY127



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bomzzz, sys похож на com, только org 0, и заголовок специальный...
гугль 'DOS ".SYS" header structure -PE -FAT -NTFS' вторая ссылка в кеше...

Всего записей: 11564 | Зарегистр. 03-08-2008 | Отправлено: 16:13 31-10-2011
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ни фига не пойму, как переделать программу в драйвер

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 17:49 31-10-2011
MERCURY127



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
гг никак... нужно изначально писать как драйвер...

Всего записей: 11564 | Зарегистр. 03-08-2008 | Отправлено: 19:38 31-10-2011
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ну дык чем они отличаются. кроме заголовка.
а драйвер мыши можно и так и так  
 
Добавлено:
у калашникова есть о том, как освободить резидент от псп. которое резиденту на фиг не нужно. это освобождает там байт 100, но эти сто байт затусованы в памяти и выделены потом не могут быть ничему. так что не вижу смысла это делать. а вот если программу запустить как драйвер на заголовок вообще местане будет тратится, и не будет рпоблемы с повторным запуском, вот только как переделкать.

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 20:06 31-10-2011
MERCURY127



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
С каким повторным запуском? Драйвер мыши и не только ее - это комбинированные программы с заголовком сис в сегменте данных если не ошибаюсь. Они имеют отдельные пути исполнения для разных способов запуска.

Всего записей: 11564 | Зарегистр. 03-08-2008 | Отправлено: 20:34 31-10-2011
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
еще бы найти где это написано
 
Добавлено:
http://elancev.h1.ru/texno/raznoe/driver.htm
нашел хоть что то

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 20:59 31-10-2011
pkbasu



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Может и не в тему пишу и следовало бы новую тему открыть, но не хочу с бухты-барахты плодить темы, если что, то подскажите, как быть, пожалуйста. А напишу о следующем языке...
 
Sphinx C-- (Сфинкс Си минус минус) -- ресурсы о нём и обсуждения.
 
Язык низкого уровня (типа МАКРО ассемблера, но с синтаксисом и возможностями оооочень сильно приближенными к Си).
Насколько я осведомлён, то компилятор за время существования двумя человеками поддерживался:
-- автором языка SPHINX C-- является Peter Cellik  (CANADA);
-- и на данный момент успешно заброшен Михаилом Шекером (Sheker) АВТОРСКИЙ САЙТ
Был форум, но где-то в 2010 истёк срок регистрации.
Хотел бы найти форум, где теперь обитают люди, которые его используют, а то за долгое время поиска гуглом ничего объединяющего не нашёл (в течении полугода время от времени искал). У самого две маленьких утилитки на нём написано. Да и в инете натыкался на авторские сайты пользователей, которые на этом языке написали свои программы (графические редакторы, звуковые проигрыватели; в демосцене применяли).
Помогите найти ресурс, где теперь сообщество обитает.

Всего записей: 36 | Зарегистр. 18-06-2009 | Отправлено: 19:57 17-11-2011
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
 
 
Добавлено:
вообще зря ты тратишь время на такой язык

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 20:34 17-11-2011
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ведь пишет же человек
Цитата:
за долгое время поиска гуглом ничего объединяющего не нашёл (в течении полугода время от времени искал).
главное отметиться...

Всего записей: 24116 | Зарегистр. 06-12-2002 | Отправлено: 21:00 17-11-2011
Sphinx114



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
главное отметиться...

Вот и я так думаю.

Всего записей: 1201 | Зарегистр. 26-03-2011 | Отправлено: 21:06 17-11-2011
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
если гугл не знает то никто. если ты конечно правильно им пользуешься. посмотри какой из ассемблеров похож по синтаксису или Си. Си вообще самый распространенный

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 21:19 17-11-2011
azurin



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
del

Всего записей: 294 | Зарегистр. 01-04-2007 | Отправлено: 17:56 18-11-2011 | Исправлено: azurin, 17:57 18-11-2011
Открыть новую тему     Написать ответ в эту тему

Страницы: 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

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на Assembler


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru