![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 11.01.2009
Сообщений: 6
|
![]()
в общем вчера начал обучение , до этого писал на php , но это как вы понимаете , разные вещи . Ну и конечно возник первый вопрос , точнее затруднение .
Код:
Последний раз редактировалось rpy3uH; 12.01.2009 в 08:51. |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 12.09.2008
Сообщений: 239
|
![]()
ээээ...... даже сложно прокомментировать....... как-то извращенно код сделан...... ну должно работать, ели вместо "044434241h" сделать "044434236h", но выводиться будет "abc".
Надо бы избавиться от привычки ставить многоточие.....
|
![]() |
![]() |
![]() |
#3 |
Регистрация: 11.01.2009
Сообщений: 6
|
![]()
он вывел "1bcd" , а дальше всё равно мусор , Min если бы вы мне показали , как простым , похожим способом , вы написали эту "программу" , то возможно нашёлся бы ответ , а на както извращённо код сделан , а чего вы хотите от первого ня изучения .
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
1) строка выводимая через 9 функцию (mov ah,09h) 21-го прерывания ОБЯЗАТЕЛЬНО должна заканчиваться символом $ (ASCII 036 или 24h)
2) привыкайте писать чёткий и понятный код. Иначе, даже в маленькой ассемблерной программе на 100-200 строк вы потеряетесь.. вот, попробуйте, например, такой код: Код:
|
![]() |
![]() |
![]() |
#5 |
Регистрация: 11.01.2009
Сообщений: 6
|
![]()
Вы меня просто непоняли , я переделываю код , основываясь на примере из статьи , вот её адрес http://bitfry.narod.ru/04.htm , а до тех команд , которые вы мне предложили , я просто ещё недошёл .
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 09.01.2009
Сообщений: 65
|
![]()
Набрав последнюю инструкцию (int 020h), введите её Enter'ом и нажмите Esc, чтобы прекратить ассемблирование. Теперь впечатайте в самом конце 5 новых байтов 00 00 00 00 24 (ничего при этом не стирая выше). Сохраните файл (F9).
У тебя адресс 0133h не заполнен, потому и лагает, точнее заполнен, но не тем что надо, 24 - это оно и есть, а без него программа идет дальше по адрессам, пока не наткнется на 24, вот мусор и берется... Последний раз редактировалось Google[Bot]; 12.01.2009 в 14:36. |
![]() |
![]() |
![]() |
#7 |
Регистрация: 11.01.2009
Сообщений: 6
|
![]()
спасибо за терпение , изменил строку на
mov d,[bx],024434241h и всё работает . |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программа в С++ | Clubber | Помощь студентам | 8 | 14.05.2011 15:12 |
Самая СЛОЖНАЯ ЗАДАЧА ВО ВСЕЛЕННОЙ | Акашаев Нурлан | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 26.04.2008 22:32 |
какая из трех сортировок (обменная,исчерпыванием,выбором) самая быстрая? | Cyberbest | Помощь студентам | 2 | 26.04.2008 10:34 |
Вот ещё одна,самая сложная: | felice | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 03.02.2008 17:21 |