58 / 58 / 29
Регистрация: 21.09.2009
Сообщений: 313
Записей в блоге: 1
1

Считать строку длиной n символов с заданной позиции курсора в графическом режиме

18.10.2012, 09:45. Показов 1447. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день. Помогите разобраться со следующей задачей - считать строку длиной n символов с заданной позиции курсора в графическом режиме. Я делаю следующим образом, но безрезультатно
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
CODSEG SEGMENT
    ASSUME CS:CODSEG
    ORG 100H
BEGIN:
    ;CURRENT VIDEO PAGE
    MOV BH, 0
    ; SET VIDEO 
    MOV AL,10H
    MOV AH, 00H
    INT 10H
    ; CLEAR 
    MOV AX, 03H
    INT 10H
    ; SET START POSITION
    MOV BH, 0
    MOV DH, 24
    MOV DL, 24
    MOV AH, 02H
    INT 10H
 
    ;READ SYMBOL
    MOV CX, 1
    MOV BH, 0
    MOV SI, 5
NEXT:
    MOV AH, 08H
    INT 10H
    MOV AH, 0AH
    INT 10H
    CMP SI, 0
    JE LOO
    DEC SI
    JMP NEXT
...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.10.2012, 09:45
Ответы с готовыми решениями:

Из файла считать строки длиной 50 символов и каждую такую строку сохранить в новый текстовый файл
Задачка стоит так. Есть текстовый файл @"D:\Temp\Sample.txt" с строками разной длинны. Нужно с него...

Как получить текущие координаты курсора в графическом режиме?
Нужно написать процедуру или функцию, которая при щелчке мыши определяла бы координаты курсора....

Как корректно считать переменную в графическом режиме
Здравствуйте. Есть такой вопрос. Есть задача, которую нужно решить в графическом режиме. Но...

Удалить из строки заданное количество символов, начиная с заданной позиции. Преобразовать строку таким образом
Удалить из строки заданное количество символов, начиная с заданной позиции. Преобразовать строку...

4
Ушел с форума
Автор FAQ
16161 / 7499 / 1031
Регистрация: 11.11.2010
Сообщений: 13,498
18.10.2012, 09:50 2
KillJoy,
строки MOV AX, 03H/INT 10H устанавливают 3-ий (текстовый режим) и отменяет установку 10h (MOV AL,10H/MOV AH, 00H/INT 10H) графического режима, просто установка любого режима приведет к очистке экрана, поэтому строки 12-13 лишние
0
Клюг
7674 / 3189 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
18.10.2012, 13:34 3
Читаем Ральфа:
Цитата Сообщение от Ralf Brown's Interrupt List
in graphics modes, only characters drawn with white foreground pixels are matched by the pattern-comparison routine
Дословно: в графмодах ф-цией распознаются только символы, выведенные белым цветом.
И, AFAIR, сравниваются они с бит-маской ПЗУ знакогенератора, т.е. русские буквы пролетают. По крайней мере раньше было так.
1
58 / 58 / 29
Регистрация: 21.09.2009
Сообщений: 313
Записей в блоге: 1
18.10.2012, 19:39  [ТС] 4
А в текстовом режиме возможно выводить цветные символы? Если да, то какими функциями?
0
Клюг
7674 / 3189 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
18.10.2012, 19:53 5
Флаг России
INT 10 0E-- - VIDEO - TELETYPE OUTPUT
Inp.:
AH = 0Eh
AL = character to write
BH = page number
BL = foreground color
Return: nothing
Desc: display a character on the screen, advancing the cursor and scrolling
the screen as necessary
Notes: characters 07h (BEL), 08h (BS), 0Ah (LF), and 0Dh (CR) are interpreted
and do the expected things
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.10.2012, 19:53
Помогаю со студенческими работами здесь

Из строки выделить подстроку длиной n символов, начиная с заданой позиции
Извините за глупый вопрос. Нужно из сроки выделить подстроку, начиная с заданой позиции длиной...

Создать функцию программиста, которая в заданной строке S1 удаляет символы с позиции N1 до позиции N2 и вставляет в это место строку S2
Создать функцию программиста, которая в заданной строке S1 удаляет символы с позиции N1 до позиции...

Строка: Сгенерировать строку длиной в 35 символов из рандомных символов (цифры 0-9 + латинский алфавит)
Всем привет. Мне нужно сгенерировать строку из рандомных символов (цифры 0-9 + латинский алфавит)...

Написать программу, которая вводит с клавиатуры строку не более 100 символов, еще одну строку не более 50 символов и выводит на экран позиции вхождени
Задание: Написать программу, которая вводит с клавиатуры строку не более 100 символов, еще одну...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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