'def title Упътване на машинната таблица - УПП, Седмица 2, 09.10.2025 'def desc Какво е машинната таблица, как работи, какви команди поддържа. # {title} {pagenav 3 min;05 October 2025;05 October 2025} {presentation-controller} :title_slide35 # Машинна таблица :middle_slide35 .unordered - Целта е да разиграем мисленето за програмиране - Без да пишем истински код - "Машинната таблица" е специална таблица, която създадох за този практикум\n {i (щеше да е на Excel ама...)} - Тя симулира действието на един {b много} прост компютър :slide35 ## Принцип на действие .centered {img ./img/machine_table.png} :middle_slide35 .p Когато натиснем "Изпълни", започва да се движи от A1 до A15 .centered .font18 {i (По принцип ще спре при първия празен ред)} .centered .p {img ./img/table_execution_continuous.gif} :middle_slide35 .centered .p Продължава да обикаля клетки, докато не срещне {b празна клетка} или не свършат всички клетки .centered .p {img ./img/table_execution_empty.gif} :middle_slide35 .unordered - Във всяка една клетка може да срещне {b команда} или {b число} - Очаква последователност от команди в колона A - След {b някои} команди, може да се срещне и число - Стойности могат да се въвеждат в колоната A - Клетките "A" и "B" стават 0 при изпълнение - Всяка команда работи със стойността на клетката "A" {b или} "B" :middle_slide35 ## Командата {` ASHOW} .p Показва стойността на клетката A като popup .p {img ./img/table_ashow.gif} :middle_slide35 ## Командата {` ASUM} .p Поглежда числото в долната клетка и го сумира към клетката "А". .p {img ./img/table_asum.gif} :middle_slide35 ### Минизадача .p Нека да покажем "A", добавим 5 към него и пак го покажем .p {img ./img/table_ashow_and_asum.gif} :middle_slide35 ## Командата {` ASUBTRACT} .p Като {` ASUM}, но изважда вместо да събере. .p {img ./img/table_asubtract.gif} :middle_slide35 ## INPUT клетките .unordered - Освен числови константи, за числа се зачитат и "INPUT1" и "INPUT2" - Те се заместват със стойността срещу съответната клетка :middle_slide35 ### Минизадача .p Нека да добавим стойността на INPUT1 към "A" .p {img ./img/table_asum_input1.gif} :middle_slide35 ### Минизадача .p Нека добавим стойността на INPUT1 и INPUT2 към "А" .p {img ./img/table_asum_input1_input2.gif} :middle_slide35 ## Командата {` BSUM} .p Същото като {` ASUM}, но с клетка "B". ## Командата {` BSUBTRACT} .p Същото като {` ASUBTRACT}, но с клетка "B". {br1} .p {b Нямаме {` BSHOW}!} Но имаме други специални команди. :middle_slide35 ## Командата {` GOTOBZ} .p {b Ако} клетка "B" е равна на 0, тогава прочита следващата клетка и отива на посочения ред. .p {img ./img/table_gotobz.gif} :middle_slide .p {b Иначе} продължава напред .p {img ./img/table_gotobz_false.gif} :middle_slide35 ## Командата {` GOTOBN} .p Същата като {` GOTOBZ}, обаче отива на посочения ред когато "B" е {b по-голямо или равно} на 0 (неотрицателно). :middle_slide35 .unordered - Употребата на останалите бутони трябва да е явна. - "Запази" запазва {b само} колона A! :middle_slide35 .p .centered {url Към задачите;./index.html}