1 / 1 / 0
Регистрация: 20.04.2015
Сообщений: 5
|
||||||
1 | ||||||
Программа посчета нулей в числах и запись их в файл10.04.2016, 21:39. Показов 1130. Ответов 7
Метки нет (Все метки)
Доброго времени суток.
Предупреждение - мой уровень ассемблера примерно равен 0. Особенностей этого языка не знаю, поэтому попрошу сильно не судить. Код мой, алгоритм тоже. Частично рабочий. Проблема в том, что заносит в файл В1, В2 и В3 только первое число, все остальные игнор. задание: Разработать программу, которая отслеживает появление указанных цифр в числовом файле. Создать файл В1 с четырехзначных чисел путем ввода с клавиатуры, образуя файл В2 с цифр файла В1, имеющих один ноль, образуя файл В3 с цифр файла В1, имеющих два нуля и создать файл В4 с цифр файла В1, имеющих три нуля. Готовый код у меня есть, только вот с самим занесением в файлы В2, В3, В4 проблема. Заносит только первое Четырехцифровое число в эти три файла, причем не обращает внимание на нуле. А должно было бы) Комментируемый код:
0
|
10.04.2016, 21:39 | |
Ответы с готовыми решениями:
7
Программа для посчета возраста Программа для посчета частоты появления символа в тексте Программа для посчета среднего арифметического элементов линейной таблицы [КР580] Сосчитать число нулей и единиц в числах массива |
Эксперт Hardware
|
||||||
11.04.2016, 12:55 | 2 | |||||
Сообщение было отмечено navchalkin как решение
Решение
navchalkin, чет ты размазал одинаковые функции по всему коду. Вполне можно создать одну и просто передавать ей параметры, типа имя/хэндлы и прочую лабуду. И чтобы записать в файл, необязательно его откравать. Достаточно создать его и потом записывать в него по-хэндлу (дескриптору).
Вот тебе код на FASM'e, решающий твою задачу: Кликните здесь для просмотра всего текста
1
|
1 / 1 / 0
Регистрация: 20.04.2015
Сообщений: 5
|
||||||||||||||||
12.04.2016, 15:15 [ТС] | 3 | |||||||||||||||
R71MT, супер, все работает. Очень благодарен.
У меня еще несколько вопросов по программе: 1) у вас метки @@ и потом вы на них возвращаетесь через @b, это как так? 2)
в ТАСМе синтаксис похож, только добавляется еще Ptr
0
|
Эксперт Hardware
|
||||||
12.04.2016, 16:15 | 4 | |||||
Сообщение было отмечено navchalkin как решение
Решение
1. Fasm manual. 1.2.3 Константы и метки
Соответственно, чтоб сменить имя "file1" на "file2" нужно инкременировать 4-ый байт (отсчёт с нуля):
1
|
1 / 1 / 0
Регистрация: 20.04.2015
Сообщений: 5
|
||||||
15.04.2016, 23:11 [ТС] | 5 | |||||
мне нужно что-то вроде этого, только для того чтобы менять не данные в переменной, а саму переменную, а то этот кусок кода:
0
|
1 / 1 / 0
Регистрация: 20.04.2015
Сообщений: 5
|
||||||
18.04.2016, 08:11 [ТС] | 7 | |||||
Переписал код, в одном месте (с хендлами) пришлось сделать три процедуры, но радует сам факт того что она заработала. Работал в Emu8086
1
|
Эксперт Hardware
|
|
18.04.2016, 09:02 | 8 |
..ну это нормально. Сегодня сделал 3, завтра - 2, а потом глядишь и вообще без них обойдёшься. Практика рулит!
1
|
18.04.2016, 09:02 | |
18.04.2016, 09:02 | |
Помогаю со студенческими работами здесь
8
Программа и функция для подсчета количества элементов вектора, десятичная запись которых содержит не менее двух нулей Переписать в файл главную диагональ матрицы, если на ней (диагонали) нет нулей. Программа, блок-схема Программа не выполняет запись в файл Программа не сохраняет запись в файл и не читает его Программа чтение из файла и запись в файл си или с++ Программа работает только на маленьких числах Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |