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

User Tag List

Показано с 1 по 10 из 44

Тема: Нашел новый баг в бейсике

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,053
    Спасибо Благодарностей отдано 
    218
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    Wink Нашел новый баг в бейсике

    Если кто коллекционирует баги в синклер-бейсике - то вот им для полноты коллекции еще один, найденный мною

    Этот баг заключается в том, что остаток строки после REM бейсиком должен игнорироваться, однако в некоторых случаях он не игнорируется, а выполняется.

    Знание этого бага будет особенно полезно тем, кто смешивает код на бейсике и на ассемблере (размещая его в REM).

    Ситуации таких три: NEXT, DATA и DEF FN.

    Например, запустив программу:

    10 FOR i=10 TO 1
    20 PRINT "Skipped loop"
    30 REM: NEXT i: PRINT "Ku-ku!": STOP
    40 NEXT i
    50 PRINT "Correct"

    Получим сообщение:
    Ku-ku
    9 STOP statement, 30:4

    ----

    Пример с DATA:

    10 REM: DATA "Ku-ku!"
    20 DATA "Correct"
    30 READ a$: PRINT a$

    В результате работы программы получится "Ku-ku!"

    ---------

    Пример с DEF FN:

    10 REM: DEF FN a(x)=0
    20 PRINT FN a(0)

    Вместо сообщения "P FN without DEF, 20:1" программа выведет сообщение "Q Parameter error, 20:1".

    --------

    Я когда-то точно нашел в прошивке бейсика, где находится и как можно пофиксить этот баг. Сейчас уже забыл, но примерно помню, что там есть процедура поиска оператора (вызывается во всех вышеперечисленных случаях), и эта процедура не учитывает, что оператор REM не заканчивается двоеточием.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

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

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

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

Похожие темы

  1. Небольшие программки на Бейсике.
    от new в разделе Для начинающих
    Ответов: 11
    Последнее: 17.07.2010, 15:45
  2. Ответов: 5
    Последнее: 03.09.2007, 02:34
  3. Border-эффект на Бейсике
    от jim в разделе Разный софт
    Ответов: 7
    Последнее: 18.04.2007, 21:50
  4. Багу нашёл!
    от fk0 в разделе Форум
    Ответов: 7
    Последнее: 15.04.2007, 07:45
  5. Ответов: 3
    Последнее: 06.09.2005, 14:08

Ваши права

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