Графика в assemblere

Тема в разделе "WASM.BEGINNERS", создана пользователем Love1, 13 янв 2007.

  1. varnie

    varnie New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2005
    Сообщения:
    1.785
    KpeHDeJIb,
    согласен здесь со всем. я это тоже все уловил, эти ошибки.
    но я вот думаю, как тогда такое задание могли дать, если бОльшая часть всей запары тут получается в программировании правильного вывода float значения?
     
  2. KpeHDeJIb

    KpeHDeJIb New Member

    Публикаций:
    0
    Регистрация:
    20 янв 2007
    Сообщения:
    24
    Так надо вывести вещественное значение? Уууу... Это да, это запара (смотрим исходник), может можно использовать масм и нормальный sprintf? Ну все проще будет (:
     
  3. KpeHDeJIb

    KpeHDeJIb New Member

    Публикаций:
    0
    Регистрация:
    20 янв 2007
    Сообщения:
    24
    Я вам еще код укоротил, для вашей формулы, вот:
    Код (Text):
    1. y   dd 0
    2. x   dd 3.2e18
    3. c2  dd 2.0
    4.  
    5. finit
    6. fld c2
    7. fsub    x
    8. fld x
    9. fpatan
    10. fmul    c2
    11. fchs
    12. fstp    y
    13. fincstp
     
  4. Love1

    Love1 New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    39
    пасибо!!!
    а как теперь это на экран вывести? Мне нужно, чтобы значение у на экране оказалось.
     
  5. KpeHDeJIb

    KpeHDeJIb New Member

    Публикаций:
    0
    Регистрация:
    20 янв 2007
    Сообщения:
    24
    Читай выше, я же написал уже тебе, это не тривиальная задача, выводить вещественное число на экран средствами чистого асма. И спросил, может можно использовать MASM, чтобы использовать функции printf для вывода на экран?
     
  6. varnie

    varnie New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2005
    Сообщения:
    1.785
    в общем, я воспользовался процедурами KpeHDeJIb.
    но почему-то выводится 2.E00
    хотя должно быть 1.57096
    откуда такое округление?
     
  7. Love1

    Love1 New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    39
    Нужно использовать Tasm или Fasm
     
  8. varnie

    varnie New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2005
    Сообщения:
    1.785
    если мне пояснят, нормально ли это, что вместо 1.57096 выводится 2.E00, то я приложу финальный исходник на FASM с процедурами, которые предоставил KpeHDeJIb.
     
  9. KpeHDeJIb

    KpeHDeJIb New Member

    Публикаций:
    0
    Регистрация:
    20 янв 2007
    Сообщения:
    24
    Положим процедуры предоставил не KpeHDeJIb а Юров (: Ну а результат действительно такой корявый идет... надо под отладчиком погонять (:

    Правка: А под отладчиком то все нормально выходит, вот фигня, все вопросы к Юрову, надо найти рабочий код вывода вещественного числа... ):
    Можно кстати и без fincstp обойтись, опять же, оказываеццо fpatan смещает указатель на вершину стека, просто я не знал (:
     
  10. Love1

    Love1 New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    39
    И что же теперь делать.Скиньте пожалуйста исходник ,который выводит корявый результат
     
  11. KpeHDeJIb

    KpeHDeJIb New Member

    Публикаций:
    0
    Регистрация:
    20 янв 2007
    Сообщения:
    24
    Да просто вставляешь вычисления в данный мой исходник перед вызовом fprint32 и все, рабочий исходник с прогой в аттаче (результат корявый, разбираться влом, дело именно в процедуре вывода, потмоу что считается все правильно).
     
  12. varnie

    varnie New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2005
    Сообщения:
    1.785
    или же вот то же самое, но под FASM:

    плюс, узнай, в самом задании как требовалось вывод этот сделать? через средства ассемблера или же как KpeHDeJIb сказал, можно printf использовать итд?
     
  13. Love1

    Love1 New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    39
    varnie
    Скиньте пожалуйста ваш исходник на Fasme
     
  14. Love1

    Love1 New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    39
    varnie
    Ё мае.Вы гений.Препод оболдеет.А в Fasme вообще не вариант код поменьше сделать.
    Насчет этого ничего в задании не указано.Нужно написать в Tasme или в Fasme
     
  15. varnie

    varnie New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2005
    Сообщения:
    1.785
    Love1,
    тебе же пояснили, почему такой здоровенный код. если бы можно было сделать это короче, сделали бы. короче, преподу покажи тот код в самом начале исходника, кот-й высчитывает значение выражения, а дальше насчет вывода спроси его - как его сделать-то надо.
    обалдеет, не обалдеет - это уже не твоя проблема:) главно, что ты задачу решила, а вывод - дело десятое.
     
  16. Love1

    Love1 New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    39
    Ребята, а у вас случайно не заволялось нигде какого-нибудь исходника на Fasme или Tasme с таймером под use16 .Если есть скиньте пожалуйста .
     
  17. KpeHDeJIb

    KpeHDeJIb New Member

    Публикаций:
    0
    Регистрация:
    20 янв 2007
    Сообщения:
    24
    Оффтоп:
    Вы девушка совсем обленились... На месте вашего препода влепил бы вам неуд (; RTFM
     
  18. KpeHDeJIb

    KpeHDeJIb New Member

    Публикаций:
    0
    Регистрация:
    20 янв 2007
    Сообщения:
    24
    Ну блин, а какая особеность работы таймеров при use16 вообщзе? И что вообще надо, что у тебя вообще с преподом не так? Скажи "отстань ты от девги" уже наконец... Я сам в шоке уже...
     
  19. Love1

    Love1 New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2007
    Сообщения:
    39
    До сдачи осталось 7ч.30 мин.Уже не знаю что делать
     
  20. KpeHDeJIb

    KpeHDeJIb New Member

    Публикаций:
    0
    Регистрация:
    20 янв 2007
    Сообщения:
    24
    Эх, студенты, всему-то вас учить... Я за 7ч 30миню до сдачи обычно уже напиваюсь под клубную музычку где-нить в нормальном месте, а не дома сижу...
    Все, кончаем оффтоп, что КОНКРЕТНО надо ВООБЩЕ?