Упътване на машинната таблица - УПП, Седмица 2, 09.10.2025



Машинна таблица

  • Целта е да разиграем мисленето за програмиране
  • Без да пишем истински код
  • "Машинната таблица" е специална таблица, която създадох за този практикум
    (щеше да е на Excel ама...)
  • Тя симулира действието на един много прост компютър

Принцип на действие

./img/machine_table.png

Когато натиснем "Изпълни", започва да се движи от A1 до A15

(По принцип ще спре при първия празен ред)

./img/table_execution_continuous.gif

Продължава да обикаля клетки, докато не срещне празна клетка или не свършат всички клетки

./img/table_execution_empty.gif

  • Във всяка една клетка може да срещне команда или число
  • Очаква последователност от команди в колона A
  • След някои команди, може да се срещне и число
  • Стойности могат да се въвеждат в колоната A
  • Клетките "A" и "B" стават 0 при изпълнение
  • Всяка команда работи със стойността на клетката "A" или "B"

Командата ASHOW

Показва стойността на клетката A като popup

./img/table_ashow.gif

Командата ASUM

Поглежда числото в долната клетка и го сумира към клетката "А".

./img/table_asum.gif

Минизадача

Нека да покажем "A", добавим 5 към него и пак го покажем

./img/table_ashow_and_asum.gif

Командата ASUBTRACT

Като ASUM, но изважда вместо да събере.

./img/table_asubtract.gif

INPUT клетките

  • Освен числови константи, за числа се зачитат и "INPUT1" и "INPUT2"
  • Те се заместват със стойността срещу съответната клетка

Минизадача

Нека да добавим стойността на INPUT1 към "A"

./img/table_asum_input1.gif

Минизадача

Нека добавим стойността на INPUT1 и INPUT2 към "А"

./img/table_asum_input1_input2.gif

Командата BSUM

Същото като ASUM, но с клетка "B".

Командата BSUBTRACT

Същото като ASUBTRACT, но с клетка "B".

Нямаме BSHOW! Но имаме други специални команди.

Командата GOTOBZ

Ако клетка "B" е равна на 0, тогава прочита следващата клетка и отива на посочения ред.

./img/table_gotobz.gif

Иначе продължава напред

./img/table_gotobz_false.gif

Командата GOTOBN

Същата като GOTOBZ, обаче отива на посочения ред когато "B" е по-голямо или равно на 0 (неотрицателно).

  • Употребата на останалите бутони трябва да е явна.
  • "Запази" запазва само колона A!