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

User Tag List

Страница 15 из 43 ПерваяПервая ... 111213141516171819 ... ПоследняяПоследняя
Показано с 141 по 150 из 427

Тема: Бейсик-помощь

  1. #141

    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    1,691
    Спасибо Благодарностей отдано 
    302
    Спасибо Благодарностей получено 
    223
    Поблагодарили
    159 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZEman Посмотреть сообщение
    Но, я думаю и так работы программы хватит на долго.
    Давай вывод на экран сделаем вставками на асме?
    Я помогу с подпрограммками.

  2. #142

    Регистрация
    07.02.2008
    Адрес
    г. Рязань
    Сообщений
    2,928
    Спасибо Благодарностей отдано 
    37
    Спасибо Благодарностей получено 
    124
    Поблагодарили
    44 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZEman Посмотреть сообщение
    То есть, если я правильно понял, память в процессе работы любой программы всёравно неизбежно уменьшается, так ?
    Помимо
    Цитата Сообщение от Alex Rider Посмотреть сообщение
    если находит переменную подходящего типа, копирует новое значение поверх старого
    могу добавить, что
    Цитата Сообщение от Alex Rider Посмотреть сообщение
    Так что out of memory может случаться при присваивании даже если переменная уже есть, но стала "больше" (строка длиннее, массив больше).
    ,
    а, если строка или массив становится короче (например, let a$=""), то память освобождается.

    - - - Добавлено - - -

    Цитата Сообщение от ZEman Посмотреть сообщение
    Во всех for буду по возможносьти использовать какую-то одну букву.
    Это круто сэкономит память - переменная for занимает в памяти 19 байт. Вообще, почитай про струкруру всякого в BASIC'е вот тут ("Формат хранения текста программы на Бейсике", совсем немного, но доступно, там же и про переменные). Поймешь что сколько байт занимает и на чем можно сэкономить. Предыдущая глава тоже, кстати, пользительная, она рассказывает что где в памяти лежит.
    ZX Evolution Rev C + ZXM-SoundCard Extreme + NeoGS.

  3. #143

    Регистрация
    28.10.2005
    Адрес
    Омск
    Сообщений
    2,117
    Спасибо Благодарностей отдано 
    162
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    32 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Да я уже понял что forы довольно много занимают, но они очень удобные, чем их ещё заменишь.
    С помощью let s=s+1.... И.т.д. медленно бывает.
    А никакого способа нет чтоб безболезненно очищать память ?
    Чтобы переменные нужные не дохли и память хоть немного освобождалась.
    Зачем например в памяти откладываются операции по выполнению фором или letами, они ведь уже прошли.

  4. #144

    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,198
    Спасибо Благодарностей отдано 
    40
    Спасибо Благодарностей получено 
    128
    Поблагодарили
    103 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    ZEman, возможно уже писал, но повторюсь. При написании большой программы на бейсике, стоит использовать однобуквенные переменные и по возможности один и те же имена для локальных подпрограмм. Чтобы не возникало ситуации, когда переменная задействуясь в какой-либо части программы, более нигде не используясь, занимала память.

    Цитата Сообщение от ZEman Посмотреть сообщение
    Зачем например в памяти откладываются операции по выполнению фором или letами, они ведь уже прошли.
    В бейсике, все переменные являются глобальными. Будучи, хоть один раз заданной, к ней можно обращаться в любой момент выполнения программы.
    Значение циклов, может использоваться как возврат в тело цикла, если в процессе его выполнения, был осуществлен переход оператором GOTO или GOSUB из тела цикла. Опять же - значение переменной цикла может понадобиться в случае "аварийного" выхода из него.
    Последний раз редактировалось null_device; 20.09.2016 в 15:19.
    Когда есть, но не знаешь где - это все равно, что нету.

  5. #145

    Регистрация
    07.02.2008
    Адрес
    г. Рязань
    Сообщений
    2,928
    Спасибо Благодарностей отдано 
    37
    Спасибо Благодарностей получено 
    124
    Поблагодарили
    44 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZEman Посмотреть сообщение
    Зачем например в памяти откладываются операции по выполнению фором или letами, они ведь уже прошли.
    Увы, переменные не уничтожаются после использования потому что интерпретатор никогда не знает где значения этих переменных могут понадобиться вновь.
    ZX Evolution Rev C + ZXM-SoundCard Extreme + NeoGS.

  6. #146

    Регистрация
    28.10.2005
    Адрес
    Омск
    Сообщений
    2,117
    Спасибо Благодарностей отдано 
    162
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    32 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    sorry, что так долго не выкладывал, простыл, сижу с температурой

    лан, лучше позже чем никогда.

    Rararura 1.5.1

    -оптимизация программы.
    -удалил все Remы кроме двух с копирайтами.
    -все forы теперь for g=...
    -удалил несколько бесполезных строк.

    теперь программа занимает вместо 36689 байт, всего 34808 байт.
    также во вложении необходимые для работы программы файлы.
    Вложения Вложения

  7. #147

    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    1,691
    Спасибо Благодарностей отдано 
    302
    Спасибо Благодарностей получено 
    223
    Поблагодарили
    159 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZEman Посмотреть сообщение
    Rararura 1.5.1
    уже ведь была 1.5.1 ?

  8. #148

    Регистрация
    28.10.2005
    Адрес
    Омск
    Сообщений
    2,117
    Спасибо Благодарностей отдано 
    162
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    32 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну это тоже, здесь ведь ничего нового нет кроме оптимизации.

  9. #149

    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    1,691
    Спасибо Благодарностей отдано 
    302
    Спасибо Благодарностей получено 
    223
    Поблагодарили
    159 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZEman Посмотреть сообщение
    Ну это тоже, здесь ведь ничего нового нет кроме оптимизации.
    а в чём тайный смысл такой подробной нумерации, если её не использовать?

  10. #150

    Регистрация
    28.10.2005
    Адрес
    Омск
    Сообщений
    2,117
    Спасибо Благодарностей отдано 
    162
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    32 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    уговорил
    незнаю что ещё можно придумать, пока додумался лишь до..

    Rararura 1.6.0 (beta)
    - отделил от программы clear и poke 23658,8 в загрузчик, после которого загружается сама программа.
    - освободилось ещё 40 байт

    далее буду сокращать переменные, может ещё что придумаю.
    это пока очень сырая бета-версия.

    есть маленькая непонятка:
    загружаю лоадер, затем гружу саму прогу, в самой программе нет автостарта.
    в конце загрузки программы мне выдаётся "С nonsense in BASIC, 2:1"
    хотя после команды run всё отлично работает.
    так-же если я загружаю после лоадера программу с автостартом на 2 строку - ошибки нет.
    в чём проблемма ?
    Последний раз редактировалось ZEman; 23.09.2016 в 09:48.

Страница 15 из 43 ПерваяПервая ... 111213141516171819 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Руссифицированный бейсик
    от Den1982 в разделе Программирование
    Ответов: 17
    Последнее: 23.02.2022, 22:58
  2. Специалист: Бейсик
    от Prusak в разделе Специалист
    Ответов: 28
    Последнее: 26.07.2019, 16:07
  3. Про бейсик
    от yur в разделе Программирование
    Ответов: 23
    Последнее: 17.02.2014, 21:26
  4. напомните про бейсик
    от goblinish в разделе Программирование
    Ответов: 7
    Последнее: 22.06.2012, 06:14

Ваши права

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