Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.05.2016, 07:21   #1
max_cska
 
Регистрация: 13.05.2016
Сообщений: 5
По умолчанию числа в массиве записать в обратном порядке.

Даны числа в массиве,их надо преобразовать в ASCII код и записать в память. Преобразование делается путем деления числа на 10 и остаток прибавляется к 30. Я сделал,чтоб программа преобразовывала их,но она преобразовывает их в обратном порядке. т.е были числа в массиве 125, 36.. она записывает 521,63.. Помогите сделать,чтобы нормально было преобразование и числа отделялись запятыми на выводе.




ПРОГА:
1.zip

Последний раз редактировалось max_cska; 13.05.2016 в 13:50.
max_cska вне форума Ответить с цитированием
Старый 13.05.2016, 07:53   #2
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

Цитата:
Сообщение от max_cska Посмотреть сообщение
преобразовать в ASCII код и записать в память.
На FASM'e:
Код:
org 100h
jmp start

mas1   db  16 dup(0)
mas2   db  125,12,124,156,7,2,15,9,13,52
len    =   $ - mas2           ; длина массива

start:                        ;
       mov   si,mas2          ; источник
       mov   di,mas1          ; приёмник
       mov   cx,len           ; длина массива
       mov   bx,10            ; делитель
cycl:  lodsb                  ; считать баит из SI
       xor   ah,ah            ;
       div   bl               ; разделить его на 10
       add   ah,30h           ; перевести остаток в ASCII
       shr   ax,8             ; отправить AH в AL
       stosb                  ; записать в DI
       loop  cycl             ; повторить СХ-раз..

       mov   si,mas1          ; вывод на экран
       mov   cx,len           ;
print: lodsb                  ; считать байт из SI
       int   29h              ; вывести его на экран
       mov   al,','           ; запятая/разделитель
       int   29h              ;
       loop  print            ;

exit:
       xor   ax,ax            ; ждать клавишу
       int   16h              ;
       int   20h              ; на выход!
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 13.05.2016, 10:47   #3
max_cska
 
Регистрация: 13.05.2016
Сообщений: 5
По умолчанию

Забыл сначала написать,что в программме должны быть несколько процедур(в задании было написано).
Запустил, в итоге 17 ошибок при компелировании этой программы((Это как я понял вообще новая программа получается? А вот то что я написал программу ,там можете пожалуйста изменить,чтобы работала как надо?

Последний раз редактировалось max_cska; 13.05.2016 в 10:50.
max_cska вне форума Ответить с цитированием
Старый 13.05.2016, 10:51   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

max_cska, а ты чем компилируешь программу?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 13.05.2016, 13:19   #5
max_cska
 
Регистрация: 13.05.2016
Сообщений: 5
По умолчанию

компилятор la.bat 3laba.zip
max_cska вне форума Ответить с цитированием
Старый 13.05.2016, 13:47   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

не нужно было выкладывать turbo debugger, достаточно было сказать, что Вы используете компилятор TASM (и TLINK для сборки)

вот содержимое вашего batch файла:
Цитата:
Код:
H:\ASU13-01\SOFT\TASM  H:\ASU13-01\MAX\3KURS\6Semestr\3lab\1.asm
H:\ASU13-01\SOFT\TLINK H:\ASU13-01\MAX\3KURS\6Semestr\3lab\1.obj
pause
Serge_Bliznykov вне форума Ответить с цитированием
Старый 13.05.2016, 13:51   #7
max_cska
 
Регистрация: 13.05.2016
Сообщений: 5
По умолчанию

max_cska вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите, пожалуйста! числа в массиве записать в обратном порядке. max_cska Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 13.05.2016 07:31
Имеется типизированный файл с тридцатью числами. Записать в другой файл числа имеющегося файла в обратном порядке. Валентин77 Общие вопросы C/C++ 8 17.12.2013 22:53
C++ записать цифрами число в обратном порядке Anya She Помощь студентам 8 19.12.2012 20:37
Записать в другой файл числа имеющегося файла в обратном порядке. pascal_luzer Паскаль, Turbo Pascal, PascalABC.NET 1 06.04.2012 23:14