ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #721  
Старый 01.04.2010, 13:33
Аватар для fluffylion
fluffylion
Познающий
Регистрация: 22.02.2010
Сообщений: 30
Провел на форуме:
188597

Репутация: 15
По умолчанию

Код:
data segment 
mass db 1,14,4,9,5,21,3,17,12,100
data ends
code segment  assume cs:code, ds:data 
start:
mov ax, data
mov ds, ax	; Загрузить сегментный адрес данных
lea bx, mass	; Загрузить адрес смещения массива
mov cx, 10	; Установить счетчик повторений цикла
mov al, 6	; Первый элемент массива в Аккумулятор
xor dx, dx
beg:
cmp byte [bx], al	; Сравнить текущий элемент массива с максимальным
jg no	; он больше
add dl, byte [bx]	; сумма
jnc no ; если сумма укладывается в размерность байт, то переход на no
adc dh, 0 ; иначе корректируем сумму
no:
inc bx	; Следующий элемент массива
loop beg
quit:
mov ax, 4C00h	; Код завершения 0
int 21h	; Выход в DOS
code ends
end start
может где ошибся, не тестировал

Последний раз редактировалось fluffylion; 01.04.2010 в 13:36..
 
Ответить с цитированием

  #722  
Старый 01.04.2010, 13:45
Аватар для wm2
wm2
Новичок
Регистрация: 12.03.2008
Сообщений: 6
Провел на форуме:
12042

Репутация: 0
По умолчанию

Cпасибо большое обоим помогли разобраться +1
 
Ответить с цитированием

  #723  
Старый 05.04.2010, 19:20
Аватар для Lewis Carroll
Lewis Carroll
Познающий
Регистрация: 28.02.2010
Сообщений: 35
Провел на форуме:
41688

Репутация: 0
По умолчанию

Может кто нибудь дать пример программы на ассме, переводящей введенное числовое выражение в обратную польскую запись ?
 
Ответить с цитированием

  #724  
Старый 08.04.2010, 21:04
Аватар для wm2
wm2
Новичок
Регистрация: 12.03.2008
Сообщений: 6
Провел на форуме:
12042

Репутация: 0
По умолчанию

Найти среднее арифметическое квадратов ненулевых элементов последовательности. Массив слов. // как это сделать на asm ? cpu 80486 16 ти разрядный.... при помощи цикла
 
Ответить с цитированием

  #725  
Старый 11.04.2010, 01:33
Аватар для becensed
becensed
Новичок
Регистрация: 02.12.2009
Сообщений: 16
Провел на форуме:
101734

Репутация: 21
По умолчанию

Цитата:
Сообщение от wm2  
Найти среднее арифметическое квадратов ненулевых элементов последовательности. Массив слов. // как это сделать на asm ? cpu 80486 16 ти разрядный.... при помощи цикла
Код:
        .model tiny
        .code
        .386

        org 100h
start:
        xor si, si
        mov cx, 7

lp:     cmp     word ptr mas[si], 0
        je      nxt
        mov     dx, word ptr mas[si]
        imul    dx, word ptr mas[si]
        add     bx, dx
nxt:
        inc     si
        inc     si
        loop    lp

        mov     ax, bx
        mov     cx, 7
        cwd
        idiv    cx
        mov     res, ax

        ret

    mas dw -1,2,4,0,-2,3,1
    res dw  0

end start
как-то так

Последний раз редактировалось becensed; 11.04.2010 в 01:43..
 
Ответить с цитированием

  #726  
Старый 16.04.2010, 08:56
Аватар для airyashov
airyashov
Новичок
Регистрация: 15.01.2009
Сообщений: 3
Провел на форуме:
4062

Репутация: 0
По умолчанию

требуется поправить
Цитата:
Сообщение от becensed  
Код:
 
....
        mov     ax, word ptr mas[si]
        imul    ax
        add     bx, dx
nxt:
...
как-то так
 
Ответить с цитированием

  #727  
Старый 17.04.2010, 18:18
Аватар для cupper
cupper
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
Провел на форуме:
1180737

Репутация: 180


По умолчанию

что делает эта опрация
add -0x3f85fbc0(,%ebx,4),%esi
AT&T (вроде этот в linux ядре используется)
 
Ответить с цитированием

  #728  
Старый 18.04.2010, 14:11
Аватар для norway
norway
Новичок
Регистрация: 03.12.2008
Сообщений: 3
Провел на форуме:
27446

Репутация: 0
По умолчанию

В коде морфнаха заметил очень интересные строки
Код:
mov eax,[edi+IMAGE_OPTIONAL_HEADER32.ImageBase] ; закидываем в eax адрес имейдж базы
....
add eax,[FileSize] ; прибавляем к адресу имейджбазы размер файла
.....
cmp eax,1314BBB9h; производим сравнение пинч ли это
   jnz fornexta
   mov [RB_is],2
   fornexta:
cmp eax,1314C600h ; производим сравнение пинч ли это
   jnz fornexta2
   mov [RB_is],2
   fornexta2:   
....
    mov edx,[edi+IMAGE_SECTION_HEADER.PointerToRawData]; закидываем в edx смещение в файле
                       add edx,[hMap]  ; плюсуем с началом файла в памяти    
....
mov eax,[RB_is] 
        .if eax = 2; если у нас пинч... 
         add edx,512; добавляем 512 к смещению+началу файла в памяти
         .endif
          mov ecx,[edi+IMAGE_SECTION_HEADER.SizeOfRawData]; закидываем в eсx физический размер секции на диске 
          .if eax = 2 ; если у нас пинч... 
          sub ecx,512; уменьшаем на 512
         .endif      

...
       mov edx,[edi+IMAGE_SECTION_HEADER.VirtualAddress];закидываем в edx виртуальный адрес
                                 add edx,[dwImageBase]; складываем с имейдж базой
                                 mov eax,[RB_is] 
                         .if eax = 2 ; если у нас пинч... 
                         add edx,512; добавляем к виртуальному адресу 512
                         .endif     
....
После этих преобразований у нас получиться что первые 512байт секции уйдут и в память грузиться не будут...
Загрузил пинча в иде и заметил что в этих сегментах расположены данные которые выкидывать нельзя...

вот отрывок из секции данных в первых 512 байтах

Код:
.data:1314B0D2; char aSoftwareMicr_1[]
.data:1314B0D2 aSoftwareMicr_1 db 'SOFTWARE\Microsoft\Windows\CurrentVersion',0
.data:1314B0D2                                        ; DATA XREF: sub_13141780+Ao
.data:1314B0D2                                        ; sub_13141780+30o
.data:1314B0FC; char aProgramfilesdi[]
.data:1314B0FC aProgramfilesdi db 'ProgramFilesDir',0 ; DATA XREF: sub_13141780+2Bo
.data:1314B10C                 dd 6 dup(0)
Сей код размещен специально чтобы морфнахом не криптовали пинчи? или есть какой то сокральный смысл?))
 
Ответить с цитированием

  #729  
Старый 18.04.2010, 17:43
Аватар для [underwater]
[underwater]
Познающий
Регистрация: 29.03.2009
Сообщений: 87
Провел на форуме:
2185909

Репутация: 308
По умолчанию

Помогите пожалуйста - надо написать на асме:
Цитата:
Ввести строку символов. Вывести сумму цифр в строке, если они там есть.
 
Ответить с цитированием

  #730  
Старый 18.04.2010, 22:34
Аватар для B1TMAST3R
B1TMAST3R
Новичок
Регистрация: 18.04.2010
Сообщений: 3
Провел на форуме:
20888

Репутация: 10
По умолчанию

Цитата:
Сообщение от [underwater]  
Помогите пожалуйста - надо написать на асме:
Простейшее задание. Сорцы на MASM ТУТ . Пароль к архиву - Antichat.ru
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопросы для новичков! (faq) PEPSICOLA С/С++, C#, Delphi, .NET, Asm 92 14.05.2010 17:59
Обзор программ для очистки жёсткого диска v1ru$ Soft - Windows 21 17.01.2010 21:07
ОС с нуля z01b С/С++, C#, Delphi, .NET, Asm 36 03.07.2008 15:30
Лучший софт для Linux _-Ramos-_ Soft - *nix 11 15.01.2008 12:08
Взлом Unix а silveran *nix 4 21.12.2005 22:46



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


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




ANTICHAT.XYZ