Помогите написать программу

Тема в разделе "WASM.BEGINNERS", создана пользователем nobody123, 28 сен 2009.

  1. nobody123

    nobody123 New Member

    Публикаций:
    0
    Регистрация:
    28 сен 2009
    Сообщения:
    1
    Надо написать программу основываясь на приложенной диаграмме. Она небольшая, но асамблер я в не видел ни разу и понятия не имею как оно пишется...
    [​IMG]
     
  2. e4key

    e4key New Member

    Публикаций:
    0
    Регистрация:
    28 июл 2009
    Сообщения:
    101
    если нужно готовую программу тебе, то имхо в комерц
     
  3. ajak

    ajak New Member

    Публикаций:
    0
    Регистрация:
    24 окт 2007
    Сообщения:
    463
    Испоьлзуй связки си и асм или асм и функции для ввода вывод си
     
  4. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    nobody123

    200 WMZ и прога твоя.
     
  5. PSR1257

    PSR1257 New Member

    Публикаций:
    0
    Регистрация:
    30 ноя 2008
    Сообщения:
    933
    _DEN_

    А я вот не буду таким жадным и напишу хотя бы часть забесплатна!

    > Increment count

    inc count
     
  6. wsd

    wsd New Member

    Публикаций:
    0
    Регистрация:
    8 авг 2007
    Сообщения:
    2.824
    _DEN_
    :) мож 20?
     
  7. InsidE

    InsidE Member

    Публикаций:
    0
    Регистрация:
    28 май 2009
    Сообщения:
    357
    Адрес:
    Over the hills and far away...
    nobody123
    а тебе под дос?под видну?

    вобщем пиши в пм,договоримся ;)
     
  8. JCronuz

    JCronuz New Member

    Публикаций:
    0
    Регистрация:
    26 сен 2007
    Сообщения:
    1.240
    Адрес:
    Russia
    3 минуты на паскале :)
     
  9. InsidE

    InsidE Member

    Публикаций:
    0
    Регистрация:
    28 май 2009
    Сообщения:
    357
    Адрес:
    Over the hills and far away...
    вот тебе бесплатнoe решение( за 5 минут ),ф-иию Read сам напиши.

    Read( n );

    eax = n; ;min
    edx = n; ;max
    ebx = n; ;total

    mov ecx,10 ;count

    Код (Text):
    1. loop:
    2. add ebx,n
    3. cmp eax,n
    4.  jnb @F
    5. mov eax,n
    6. @@:
    7. cmp edx,n
    8.  jna @F
    9. mov edx,n
    10. @@:
    11. Read( n )
    12. cmp ecx,10
    13.  jb loop
    ........
    остальное за 50 wmz :)
     
  10. JCronuz

    JCronuz New Member

    Публикаций:
    0
    Регистрация:
    26 сен 2007
    Сообщения:
    1.240
    Адрес:
    Russia
    Я так вижу %) Хотя *рен его знает
    Код (Text):
    1. .data?
    2.   Count db ?
    3.   n     db ?
    4.   Min   db ?
    5.   Max   db ?
    6.   Total db ?
    7.   Mean  db ?
    8. .code
    9.  
    10. Calc:
    11.  
    12.         ; Read n
    13.  
    14.         pushad
    15.        
    16.         xor esi, esi            ; Set count to 0
    17.         xor ebx, ebx
    18.         xor eax, eax
    19.  
    20.         cmp esi, 10             ; Is Count 10
    21.         je  _end_            
    22.  
    23. _begin_:
    24.  
    25.         test    esi, esi            ; Is count 0
    26.         jnz     _next_1             ; NO
    27.         ; YES
    28.         mov     dword ptr [Min],  eax           ; Ebx = Min
    29.         mov     dword ptr [Max],  eax  
    30.         mov     dword ptr [Total],eax           ; Edi =
    31.  
    32. ; Ebx = Min
    33. ; Edi = Total
    34. _next_1:
    35.         inc     Total
    36.         cmp     dword ptr[Min], eax
    37.         jle     _next_2              
    38.         mov     ebx, eax
    39.  
    40. _next_2:
    41.  
    42.         cmp     dword ptr [Min], eax
    43.         jge     _next_3              
    44.         mov     dword ptr [Max], eax
    45.  
    46. _next_3:
    47.  
    48.         inc     esi                 ; Inc Count
    49.         cmp     esi, 10
    50.         jnz     _begin_        
    51.  
    52. _end_:
    53.         mov     eax, Total
    54.        
    55.         mov     ecx, 10
    56.         cdq                         ; Edx = 0
    57.         idiv    ecx
    58.         mov     esi, eax
    59.         mov     eax, dword ptr [Max]
    60.         mov     edx, ebx
    61.  
    62.     ; Esi = Min
    63.     ; Eax = Max
    64.     ; Ebx = Mean
    65.        
    66.     ; print Esi, Eax, Ebx
    67.  
    68.     popad
    69.     ret
     
  11. InsidE

    InsidE Member

    Публикаций:
    0
    Регистрация:
    28 май 2009
    Сообщения:
    357
    Адрес:
    Over the hills and far away...
    вот блин забыл :)
    там перед cmp ecx,10 должно быть inc ecx
     
  12. InsidE

    InsidE Member

    Публикаций:
    0
    Регистрация:
    28 май 2009
    Сообщения:
    357
    Адрес:
    Over the hills and far away...
    и еще jb заменить на jbe
     
  13. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    wsd

    Нее, за 20 я нифига деать не буду :)))