Форум программистов, компьютерный форум, киберфорум
Assembler: DOS/Real Mode/16-bits
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
Assembler Резидентная программа: вывод строки символов на экран каждые 45 секунд Доброго времени суток. Дано задание, написать резидентную программу,которая вывод строку символов на экран каждые 45 секунд. code segment ; определение кодового сегмента assume cs:code,ds:code ; CS и DS указывают на сегмент кода org 100h ; размер PSP для COM программы start: jmp load ;... https://www.cyberforum.ru/ assembler-dos/ thread1734842.html Перемещение содержимого из каталогов (tasm) Assembler
Добрый день. Задание следующее: создать программу для перемещения и просмотра содержимого каталогов на диске Код для просмотра и установки года код сделан, а вот как перемещать не знаю Комментарии на укр. языке, потому что учусь в Киевском ВУЗе model tiny .code .startup ;--------------------------------------------- lea dx,DTA ;встановлення адресу зміщення для
Assembler Программа для перемещения и просмотра содержимого каталогов на диске Добрый день. Задание следующее: создать программу для перемещения и просмотра содержимого каталогов на диске. Как просматривать файлы я код сделал, а вот чтобы перемещать их из каталога в каталог не знаю. Комментарии на укр. языке потому что учусть в Киевском ВУЗе model tiny .code .startup ;--------------------------------------------- lea dx,DTA ;встановлення адресу зміщення... https://www.cyberforum.ru/ assembler-dos/ thread1734454.html Assembler Обработчик прерываний от таймера (int 1Ch) https://www.cyberforum.ru/ assembler-dos/ thread1731611.html
Привет всем! Помогите вспомнить, товарищ попросил помочь, уже позабыл, у меня есть обработчик прерывания 1Ch , можно в нем вызвать прерывания dos(21h) и bios(10h), или надо по тругому алгоритм строить ? Спасибо
Assembler Почему не создается файл?
Здравствуйте. Помогите, пожайлуста, с файлами. Вот мой код .model small .stack 300h .data student struc n db 30 dup(' ') math dw ? hist dw ?
Assembler Переход с флешки на загрузку с HDD https://www.cyberforum.ru/ assembler-dos/ thread1729737.html
Пишу бутсектор флешки, почти всё готово, осталась одна маленькая неприятность. У юзера должна быть возможность выйти из загрузчика и загрузиться в "нормальном" режиме с дефолтного HDD, но вот номер этого HDD для int 13h неизвестен, ибо 80h биос всегда оставляет за флешкой, а по остальным номерам происходит либо опять загрузка с флешки, либо ошибка. В чём может быть проблема и какой указывать...
Assembler Бесконечный цикл с выходом при нажатии клавиши Как это реализовать? https://www.cyberforum.ru/ assembler-dos/ thread1728816.html Меняющиеся знаки при ожидании ввода Assembler
Необходимо что-бы при ожидании нажатия клавиши поочередно выводились на экран 2 символа "<"и">" Подскажите, как реализовать? Ассемблер MS-DOS
Assembler Перехват прерывания 20h https://www.cyberforum.ru/ assembler-dos/ thread1721889.html
Здравствуйте. Пытаюсь перехватить прерывание 20h, вывести строку, а потом восстановить адрес обработчика и завершить программу. В ДосБоксе первый запуск происходит успешно, а вот после второго ДосБокс зависает. Помогите, пожалуйста, найти ошибку. CSEG segment assume cs:CSEG, ds:CSEG, es:CSEG, ss:CSEG org 100h _start: mov ax, 3520h int 21h
Assembler Почему при вызове функции 4ch прерывания 21h резидентный обработчик падает? https://www.cyberforum.ru/ assembler-dos/ thread1721591.html
Написал резидентную программу, всё работает, но если моя или другие программы вызывают функцию 4ch прерывания 21h, консоль перестаёт реагировать на нажатия, хотя курсор мигает. Мне нужно вызывать эту функцию для выхода из копии программы при повторном запуске. Также, если после загрузки вызываю программу mem, то консоль перестаёт реагировать на нажатия, хотя курсор мигает. Скорее всего это...
Assembler Assembler - "Триколор"
Приветствую всех!!! В общем необходима помощь в реализации программы, написанную на assemblere. Вообщем суть такая, необходимо чтобы пользователь вводил начальные координаты x,y и счётчик - это длина линии (в программе три вертикальные линии: белый, синий и красный). Во-первых, ошибка складывается с jmp где-то, что когда я ввожу двухзначное число, всё нормально, а как только однозначное - выдаёт...
Assembler Tasm не понимает что такое outsb, как запустить на нём программу используя outsb? Здравствуйте.Подскажите.Обрабатываю вот эти строки in al,61h; получаем текущее состояние порта 61h в AL or al,00000011b; установим 0-й и 1-й биты в 1 out 61h,al; теперь динамик включен mov al,0B6h; канал 2, режим 3 out 43h,al;отправляем в командный регистр mov esi,offset melody; указываем на данные mov ecx,size_melody ; устанавливаем счетчик mov dx,42h;будем посылать байты во 2-й канал... https://www.cyberforum.ru/ assembler-dos/ thread1718718.html
1 / 1 / 0
Регистрация: 10.11.2014
Сообщений: 83
14.05.2016, 22:55  [ТС] 0
TASM

Определить количество символов в последней строке текстового файла - Assembler - Ответ 9139764

14.05.2016, 22:55. Показов 3131. Ответов 20
Метки (Все метки)

Ответ

Определить количество символов в последней строке текстового файла Результат и саму строку показать на экране. Записать строку в новый файл.

Вот что я написал в итоге. Чтобы узнать последнюю строку с конца файла я двигаюсь и проверяю на конец строки 0A.
Только проблема у меня в этом самом месте. В отладчике она бесконечно в цикле двигается и не выходит. А значит не проходит сравнение, а почему я не понимаю.
Вот сам код с комментариями TASM
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
.386
dseg segment use16  
    text1    db 14,11,'File Open: ',0Dh,0Ah,'$'
    text2    db 13,10,'Result..: $'
    text3    db 14,11,'Next file: $'
    text4    db 13,10,'Error cr: $'
        Buf       db ? ;для изначального файла
    Buf1     db ? ; для работы внутри файла
    handle   dw ?; буфер логического номера файла
    handle2  dw ?; буфер 2 логического номера файла
    pathname db   'myfile2.asm', 0  ;    путь к файлу
    fName    db   'myfile.asm',0 ;путь ко 2 файлу ,новому
dseg ends
 
cseg segment use16
assume cs:cseg,ds:dseg
 
m1:
    mov cx,dseg
    mov ds,cx
;-------------------
;Происходит открытие файла
    mov al,0
    lea dx,fname
    mov ah,3Dh
    int 21h
    jc error  ; ошибка открытия файла (CF=1) 
 
    mov ah,09h
    lea dx,text1
    int 21h                ;вывод сообщения что файл открылся
    mov handle,ax
;--------------------
;Чтение байтов из файла
    lea dx,buf
    mov bx,handle
    mov cx,0FFh
    mov ah,3Fh
    int 21h
;--------------------
;Смещаю указатель на конец файла 
;Первый раз на -1 
    mov bx,handle
    mov al,2
    mov cx,0FFFFh
    mov dx,0FFFFh
    mov ah, 42h
    int 21h
    
    mov bx,handle
    mov cx,1
    lea dx,buf1
    mov ah, 3Fh
    int 21h
    xor bh,bh  ;счетчик сколько байтов в строке
    inc bh      
    cmp buf1,0Ah
    jne short m2 ;если сравнение не дало результата
    jmp short m3
;-----------------------------
;Теперь указатель смещаю на два и буду считывать по 1 байту.
 
    m2:
    mov bx,handle
    mov al,1
    mov cx,0FFFFh
    mov dx,0FFFEh
    mov ah, 42h
    int 21h
    
    mov bx,handle
    mov cx,1
    lea dx,buf1
    mov ah, 3Fh
    int 21h
    inc bh          
    cmp buf1,0Ah
    jne short m2 ; повторяю пока сравнение не дало результата
;---------------------------------- 
;Сравнение прошло успешно, я нашел начало последней строки
;Считываю в буфер всю строку
    m3:
    mov bx,handle
    mov cx,0FFFFh
    lea dx,buf1
    mov ah, 3Fh
    int 21h
;-----------------------------------
;Вывожу на экран результат
;Сначала количество символов а потом строку
    mov ah,0Ah
    lea dx,text2
    int 21h   
  
    mov ah,09h
    movzx dx,bh
    int 21h 
  
    mov ah,0Ah
    lea dx,Buf1
    int 21h
;-------------------------------------------------
;Создаю новый файл
    mov ah,0Ah               
    lea dx, text3 ; сообщение то что началась работа с новым файлом
    int 21h
    
    mov ah,3ch
    mov cx, 0           ;  стандартные атрибуты файла
    lea  dx, pathname
    mov ah, 3ch
    int 21h             
    jc short  error     ; ошибка создания файла (CF=1)
;-------------------------------------------------------
;Запись в новый файл
    mov handle2,ax  ;сохраняю хэндл второго файла
    mov bx,handle2
    mov cx,0
    lea dx,buf1
    mov ah,40h
    int 21h
;-------------------------------------------------------
;Закрываю файл
    mov bx,handle2
    mov ah, 3Eh
    int 21h
    jmp short m4
 
    error:
    mov   ah,09h        ; выводим на экран сообщение об ошибке
    lea   dx,text4
    int   21h
    m4:
    mov ah, 4ch         ; завершаем программу
    mov al, 00h
    int 21h
    
cseg ends
end m1
Помогите пожалуйста разобраться.

Вернуться к обсуждению:
Определить количество символов в последней строке текстового файла Assembler
1
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.05.2016, 22:55
Готовые ответы и решения:

Определить количество символов в последней строке текстового файла
Определить количество символов в последней строке текстового файла. Результат и саму строку...

Определить среднее количество символов в строке текстового файла
Организовать текстовый файл состоящий из N строк. Определить сред-нее количество символов в...

Определить среднее количество символов в строке данного текстового файла
4.Организовать текстовый файл состоящий из N строк. Определить среднее количество символов в строке...

Подсчитать количество символов в каждой строке текстового файла
Добрый вечер, вот такую задачу нужно реализовать, подскажите пожалуйста как ее реализовать, если...

20
14.05.2016, 22:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.05.2016, 22:55
Помогаю со студенческими работами здесь

Подсчитать количество символов в каждой строке данного текстового файла
Помогите пожалуйста. Задача 6. Дан текстовый файл. Подсчитать количество символов в каждой...

В начале каждой строки текстового файла записать количество символов в этой же строке
Написать программу которая копирует или преобразовывает текст входного текстового файла(файлов)так...

Составить программу, которая подсчитывает наименьшее количество символов в строке текстового файла
Составить программу, которая подсчитывает наименьшее количество символов в строке текстового...

Перед каждой строкой текстового файла вставить номер строки и количество символов в этой строке
Перед каждой строкой текстового файла вставить номер строки и количество символов в этой строке

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru