Важная информация

User Tag List

Страница 9 из 13 ПерваяПервая ... 5678910111213 ПоследняяПоследняя
Показано с 81 по 90 из 124

Тема: Как организовать память для текстового редактора?

  1. #81

    Регистрация
    14.01.2005
    Адрес
    Таганрог, Россия
    Сообщений
    4,286
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    39 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от alone Посмотреть сообщение
    К тому же, это один из немногих методов, где сохранение на диск не требует предварительной обработки.
    Даже для блочного ввода-вывода?

  2. #82

    Регистрация
    27.01.2005
    Сообщений
    924
    Спасибо Благодарностей отдано 
    28
    Спасибо Благодарностей получено 
    193
    Поблагодарили
    154 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от vinxru Посмотреть сообщение
    Это не рационально. Это очень сильно фрагментирует ОЗУ, из за чего половина будет пропадать.
    от задачи зависит. блоки же не только занимаются, но и освобождаются. Несколько свободных подряд - автоматом склеиваются в один большой.

    ну это у меня было так. Но я не редактор писал.)

  3. #83

    Регистрация
    03.01.2006
    Адрес
    Рязань
    Сообщений
    2,935
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vitamin Посмотреть сообщение
    Даже для блочного ввода-вывода?
    Это будет гуляние по списку, копирование в буфер плюс постоянное ожидание оборотов диска. А идеал - один-два системных вызова (в ACEdit именно так, даже для Merge).

  4. #84

    Регистрация
    14.01.2005
    Адрес
    Таганрог, Россия
    Сообщений
    4,286
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    39 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от alone Посмотреть сообщение
    Это будет гуляние по списку, копирование в буфер плюс постоянное ожидание оборотов диска. А идеал - один-два системных вызова (в ACEdit именно так, даже для Merge).
    Это к чему?

    Ты сказал, что хранение текста в разделенном по курсору виде не требует дополнительных действий при сохранении на диск. У меня возникли сомнения по поводу этого заявления применительно к блочному вводу-выводу.

  5. #85

    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от alone Посмотреть сообщение
    Не будем. Вход в развёрнутый код с нужного места, а зацикливание - в конце кода. Можно по 8-битному счётчику.
    вроде бились за каждый байт, а теперь циклы разворачиваем ;P
    хотя конечно этот вариант крут
    а потом еще 16(стек)+хвост(этот) ...

    по поводу записи, перед записью надо будет "перейти в конец текста"
    но при записи эт будет не заметно

    и еще, речь то идет о старых машинах (в оригинале Специалист)
    а для запись на мафон надо всё иметь одним блоком....

    ---------- Post added at 15:50 ---------- Previous post was at 15:50 ----------

    Цитата Сообщение от vinxru Посмотреть сообщение
    Поменяйте Витамину статус Vitamin C++ на Тролль
    тогда уж на Троль ++

  6. #86

    Регистрация
    03.01.2006
    Адрес
    Рязань
    Сообщений
    2,935
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vitamin Посмотреть сообщение
    Цитата:
    Сообщение от alone Посмотреть сообщение
    Это будет гуляние по списку, копирование в буфер плюс постоянное ожидание оборотов диска. А идеал - один-два системных вызова (в ACEdit именно так, даже для Merge).
    Это к чему?

    Ты сказал, что хранение текста в разделенном по курсору виде не требует дополнительных действий при сохранении на диск. У меня возникли сомнения по поводу этого заявления применительно к блочному вводу-выводу.
    Что конкретно ты не понял в моём ответе?

  7. #87

    Регистрация
    14.01.2005
    Адрес
    Таганрог, Россия
    Сообщений
    4,286
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    39 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от alone Посмотреть сообщение
    Что конкретно ты не понял в моём ответе?
    Вот из этой цитаты:
    Цитата Сообщение от alone Посмотреть сообщение
    Вариант с разрезанием по курсору пока самый лучший. При движении на страницу назад или вперёд всё равно требуется пройтись по каждому символу (чтобы отсчитать нужное число строк), так что их переброска не сильно затруднит.
    я сделал вывод, что фраза (следующая за предыдущим предложением):
    Цитата Сообщение от alone Посмотреть сообщение
    К тому же, это один из немногих методов, где сохранение на диск не требует предварительной обработки.
    относится к предлагаемому методу хранения текста в виде двух частей, разделенных по курсору редактирования.

    С учетом того, что разделение делается в произвольном месте, а ввод-вывод у нас блочный, над стыком таки потребуется дополнительная обработка. И она будет сложнее, если свободное окно между кусками меньше размера блока. Я в чем-то ошибся? Если да, то в чем?

  8. #88

    Регистрация
    01.12.2010
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,657
    Записей в дневнике
    21
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vitamin Посмотреть сообщение
    С учетом того, что разделение делается в произвольном месте, а ввод-вывод у нас блочный, над стыком таки потребуется дополнительная обработка. И она будет сложнее, если свободное окно между кусками меньше размера блока. Я в чем-то ошибся? Если да, то в чем?
    Это не проблема. Перед сохранением, перемещаем курсор в конец текста. Это один вызов уже существующей в редакторе функции. Это объединяет текст в один блок.

    P.S. А потом обратно переместим. Либо можно сохранять двумя кусками, если ОС это позволит. Эти способы по любому проще сохранения из кучи.

  9. #89

    Регистрация
    14.01.2005
    Адрес
    Таганрог, Россия
    Сообщений
    4,286
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    39 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от vinxru Посмотреть сообщение
    Это не проблема. Перед сохранением, перемещаем курсор в конец текста. Это один вызов уже существующей в редакторе функции. Это объединяет текст в один блок.
    Но ведь это уже обработка. Конечно, ее можно минимизировать, вычислив оптимальную сторону куда прыгать (в начало или в конец), но в общем случае она есть.

    Цитата Сообщение от vinxru Посмотреть сообщение
    Эти способы по любому проще сохранения из кучи.
    Понятное дело.

    Кстати, была мысль при укорачивании строк не уплотнять весь текст, а оставлять окно, пометив его какими-нибудь кодами. Потом при поиске свободного места можно в обе стороны бегать уплотняя построчно.

  10. #90
    ZEK
    Гость

    По умолчанию

    Цитата Сообщение от Vitamin Посмотреть сообщение
    Но ведь это уже обработка.
    Пипец задрот, одно дело из кучи собирать в буфер и записывать (а каждый очередной кусок может выходить за пределы буфера и это дополнительный танец), то ли переместить курсор в хвост, и сохранить одним куском

Страница 9 из 13 ПерваяПервая ... 5678910111213 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Алгоритм текстового Quest'a
    от ALKO в разделе Программирование
    Ответов: 11
    Последнее: 23.12.2010, 00:47
  2. Как проще код из текстового файла -> Alasm-файл?
    от TomCaT в разделе Программирование
    Ответов: 10
    Последнее: 28.05.2010, 16:53
  3. Адаптация текстового редактора
    от Raydac в разделе Софт
    Ответов: 1
    Последнее: 09.06.2008, 14:27
  4. Интересная идея текстового интерфейса в играх
    от Black_Cat в разделе Программирование
    Ответов: 3
    Последнее: 18.11.2006, 15:22
  5. Проект муз. редактора для AY
    от Bulba в разделе Музыка
    Ответов: 36
    Последнее: 09.09.2005, 20:32

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •