Integer BASIC — Вікіпедія

Integer BASIC
Дата появи 1977
Розробник Стів Возняк
Під впливом від HP Time-Shared BASICd
Вплинула на Applesoft BASIC[en]
Мова реалізації асемблер
Платформа Apple I, Apple II

Integer BASIC — інтерпретатор мови BASIC написаний Стівом Возняком для комп'ютерів Apple I та Apple II. Спочатку доступний на касеті, а тоді доданий в ROM оригінального Apple II випуску 1977, це був перший інтерпретатор BASIC що використовувався багатьма власниками домашніх комп'ютерів.

Мова підтримувала тільки математику з цілими числами, не маючи підтримки рухомої коми. Використання цілих дозволяло числам зберігатись в набагато компактнішому 16-бітному форматі який можна було читати і обробляти швидше ніж 6 чи 9 байтні формати плаваючої коми які використовувались у більшості BASIC-ів того часу. Щоправда, це обмежувало його застосування як мови програмування загального призначення.

Integer BASIC був замінений на Applesoft BASIC[en] починаючи з Apple II Plus в 1979. Це була ліцензована і модифікована версія Microsoft BASIC, яка містила підтримку чисел з рухомою комою якої бракувало в Integer BASIC.

Історія[ред. | ред. код]

Стів Возняк вперше спробував мову BASIC в кінці 1960-тих років на терміналі з розподілом часу в школі. Він прочитав 101 BASIC Computer Games будучи членом Homebrew Computer Club[en] в 1970-тих, і вирішив що кожен комп'ютер який він спроектує буде здатним грати ігри з цієї книжки і запускати симуляції логіки з якими він працював в Hewlett-Packard. Возняк знав що Білл Гейтс написав Altair BASIC для процесора Intel 8080, і сподівався що він буде першим хто напише його для MOS Technology 6502.[1]

Пізніше Возняк описував свою мову як «створену переважно для ігор і з освітньою метою».[2] Його єдиним досвідом з BASIC були кілька днів зі шкільним терміналом, і він не мав доступу до інших систем. Возняк мусив написати мову, яку він називав «GAME BASIC», на папері, вручну перекласти її на машинний код 6502. Не маючи практики написання мов програмування, він використав свій досвід з HP для створення стекової машини[en] для інтерпретації виразів.[1][3]

Перед цим Возняк вивчав інструкцію до HP BASIC, яку він позичив з роботи, не знаючи що синтаксис версії Hewlett-Packard дуже відрізнявся від DEC BASIC[en], синтаксис якого використовували 101 BASIC Computer Games, та Altair BASIC. Щоб зберегти час, і тому що ігри і симуляції логіки використовували переважно цілочисельну математику, Возняк видалив підпрограми для роботи з числами з рухомою комою з GAME BASIC. Його інтерпретатор реалізовував лише «16-бітні цілі» обчислення.[1]

Раніше Возняк розробляв гру Breakout[en] для компанії Atari за допомогою апаратних засобів. Він сподівався відтворити гру в своєму BASIC, тому, розробляючи компю'тер Apple II, Возняк додав підтримку кольорової графіки, ігрових падлів та звуку, до мови, яка тепер називається Integer BASIC. (Через те що мова потребувала 4K RAM, це було задано як мінімальний об'єм пам'яті для Apple II.) Демонструючи комп'ютер та гру Brick Out Стіву Джобсу, Возняк показував як він може швидко змінити кольори гри, просто змінюючи початковий код. Воз пізніше писав що він довів що «програмне забезпечення набагато гнучкіше за апаратне», і що він з Джобсом зрозуміли що «тепер кожен може створювати аркадні ігри, не мусячи проектувати для них апаратне забезпечення.»[1]

Возняк показував Brick Out на зустрічі Homebrew Computer Club. Пізніше він описував це як «найбільш приємний день мого життя … Для мене це виглядало як великий крок. Після проектування апаратури для аркадних ігор, я знав що можливість програмувати їх на BASIC змінить світ.[4]»

Розробка[ред. | ред. код]

Мікросхема з Integer BASIC також включала монітор машинного коду, «міні-ассемблер» та дизассемблер для створення і зневадження програм мовою ассемблера, та інтерпретатор 16-бітної мови байткоду названої SWEET16[en]. Возняк побудував монітор як першу програму для Apple II, а тоді використав його щоб написати Integer BASIC.[2][5][3]

Зноски[ред. | ред. код]

  1. а б в г Wozniak, Steve (1 травня 2014). How Steve Wozniak Wrote BASIC for the Original Apple From Scratch. Gizmodo. Архів оригіналу за 2 травня 2014. Процитовано 2 травня 2014.
  2. а б Wozniak, Steve (May 1977). System Description / The Apple-II. BYTE. с. 34—43. Процитовано 17 жовтня 2013.
  3. а б Weyhrich, Steven (12 грудня 2001). History part 3: The Apple II. Архів оригіналу за 2 січня 2020. Процитовано 16 вересня 2007. The [Integer] BASIC, which we shipped with the first Apple II's, was never assembled — ever. There was one handwritten copy, all handwritten, all hand-assembled.
  4. Williams, Gregg; Moore, Rob (December 1984). The Apple Story / Part 1: Early History. BYTE. с. A67. Процитовано 23 жовтня 2013.
  5. Helmers, Carl (March 1978). An Apple to Byte. BYTE. с. 18. Процитовано 17 жовтня 2013.

Посилання[ред. | ред. код]