wpt - слово та n - номер біту) - nPBB proc n tmov ax, wpt n tmov bx , 01h n tmov cl, n n tshl bx, cl; Підготовка маски n tand ax, bx t; накладання маски n tmov al, 30h; Код нуля n tjz endpbb n tmov al, 31h; Код одініці nendpbb: n t; - Друк: - n tmov ah, 0Eh n tmov bh, 00h n tmov cx, 01h n tint 10h n tret nPBB endp n; == КIНЕЦЬ БЛОКУ ПРОЦЕДУР == n »;
/ / БЛОК ОГОЛОШЕННЯ ЗМІННІХ.Text +=« n n; == ПОЧАТОК БЛОКУ ОГОЛОШЕННЯ ЗМІННІХ == n; змінні процедур: ni dw? Nn db? Nwpt dw? ; Wordprint temp nasciitemp db? N; змінні тіла програми: »;
/ / додаємо строкові Константи та змінні, знайдені в коді:
for (i=0; i
{(LexGridView [«mean», i]. Value.ToString () == «Константа (Строкова)»)
{= LexGridView [«lex», i]. Value.ToString (). Trim (new Char [] {«», «" »});. Text + =« nStrConst» + StrConstCount + «db " » + TempGen + «", " $ " »; + +;
}
} (i=0; i
}
/ / Закінчуємо блок змінніх та програму:. Text +=« n; == КIНЕЦЬ БЛОКУ ОГОЛОШЕННЯ ЗМIННІХ == nend main»;. Show («Код згенерований успішно! Перейдіть на іншу вкладку для его перегляду чі Збереження »);
GenSyn ();
} if (AnalizPerformed == false)
{. Show («ГЕНЕРАЦІЯ коду НЕ можлива без проведення АНАЛІЗУ»);
} else {. Show («Виправте віявлені помилки»);
}
}
/ / Кнопка Збереження згенерованих кодуvoid SaveAsButton1_Click_1 (object sender, EventArgs e)
{(saveFileDialog1.ShowDialog () == DialogResult.OK)
{. WriteAllText (saveFileDialog1.FileName, richTextBox2.Text, Encoding.GetEncoding (1251));
}
}
/ / Формуємо текст для ОБРОБКИ генератором:
public string generatext=«»; void GenSyn ()
{i; (i=0; i
{(LexGridView [«mean», i]. Value.ToString ()) {: «Ключове слово»: (LexGridView [«lex», i]. Value.ToString () !=«ПРОГРАМА» && LexGridView [«lex», i]. Value.ToString ()!=«КІНЕЦЬ») generatext +=LexGridView [«lex», i]. Value.ToString () + « »;;« Змінна »: + =« V »;;« Константа (Строкова) »: + =« S »;;« Константа (8-ва) »: + =« ; C »;;« Знак Відкриття блоку »: +="{»;;« Знак Закриття блоку »: + =«} »;;
}
}=generatext.Trim (); [] gtlines=generatext.Split (new Char [] {«;»});=«»; (i=0; i < ; gtlines.Length; i + +)
{[i]. Trim (); (! gtlines [i]. Contains («ціле»)) generatext +=gtlines [i];
}. Show (generatext);
}
}
}
Додаток Б
Лістінг класу BinaryTree.cs, что реалізує побудову та поиск в таблицях ідентіфікаторів за методом бінарного дерева
using S...