Язык программирования Форт



         

Упражнения


  • Определите слово .LSB для печати младшего байта числа, находящегося в стеке. Не используйте PAD и С@. (Подсказка: какое значение старших восьми разрядов должно иметь число в стеке перед операцией . ? Как установить эти разряды в 0 ?)
  • Определите слово .MSB для печати старшего байта положительного числа, находящегося в стеке. (Совет: вспомните, что к старшему байту числа добавляется 1 каждый раз, когда к нему прибавляется 256, и что оператор / производит округление с уменьшением.)
  • Переопределите .LSB, пользуясь методом определения .MSB. (Указание: вы должны применить DUP к числу, находящемуся в стеке, и, кроме того, SWAP и -.)
  • Дайте новое определение .LSB и .MSB под именами .LSB2 и .MSB2, используя PAD и С@. Очень часто одно и то же можно на Форте сделать разными способами. Наилучший метод -- это обычно компромисс между требуемыми ресурсами памяти и временем исполнения. Какое из определений .LSB и .MSB будет самым быстрым ?
  • Напишите слово для деления числа без знака, находящегося на вершине стека, на 256, не используя для этого никаких чисел.
  • Напишите слово для добавления числа 256 к числу на вершине стека путем прибавления 1 к чему-то.




    Содержание  Назад  Вперед