Консультация № 137900
26.05.2008, 21:09
0.00 руб.
0 1 1
Здравствуйте уважаемые эксперты!
Не могли бы вы помочь в решении задачи. Необходимо заполнить массив случайными числами и сохранить числа в файл, группами по 10 чисел разделенных запятыми. с генерацией уже разобрался, выходит более менее сносно(кстати помогли ваши архивы)... но как теперь все это записать - ума не приложу...
Генерирую около 400 чисел.
Заранее спасибо.

Обсуждение

давно
Старший Модератор
31795
6196
29.05.2008, 17:41
общий
это ответ
Здравствуйте, Azazel!

Программа под TASM.
Т.к. с генерацией Вы разобрались, то программа для примера записывает в файл значения таблицы прерываний Dos.

Вопросы задавайте в мини-форум.
Удачи!

Приложение:
MASM;IDEAL or MASMMODEL tiny.186CODESEGorg 100h;будем читать таблицу векторов прерыванийstart: xor si,si mov ds,si;строковыми командами cld mov cx,40;кол-во групп по 10 mov di,offset fileLine;цикл по группамloop_a: push cx mov cx,10;кол-во элементов в группе;цикл в группеloop_b: push cx;читаем число lodsw mov bx,10 xor cx,cx;разкладываем его на цифры и рапоминаем в стекеloop_c: xor dx,dx div bx push dx inc cx or ax,ax jnz loop_c;записываем в строку символ цифрыloop_d: pop ax or al,30h stosb loop loop_d;разделяем числа mov al,‘ ‘ stosb;цикл по элементам pop cx loop loop_b;разделяем группы mov al,‘,‘ stosb;цикл по группам pop cx loop loop_a;востанавливаем сегмент данных push cs pop ds;создаем файл mov ah,3ch xor cx,cx mov dx,offset fileName int 21h;записываем в файл mov bx,ax mov fileHndl,ax mov ah,40h mov dx,offset fileLine mov cx,di sub cx,dx int 21h;закрываем и выходим mov ah,3eh mov bx,fileHndl int 21h ret;данныеfileName db ‘out.txt‘,0fileHndl dw ?fileLine db 40*(10*(6+1)+1) dup(?) end start
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.

Форма ответа