extracted_text:
Внимание! Внимание!
Весёлое гуляние!
Собирайся скорее народ!
Видишь, Масленица к нам идёт!
Приходите к нам на праздник
И тихони и проказник.
Будет чай у нас горяч
Будет блин и калач,
Будут игры и смех,
Будет праздник для всех.
Поспешайте, наряжайтесь,
К нам на праздник собирайтесь!!
Здравствуйте, гости дорогие!
Добро пожаловать к нам на широк двор
На Широкую Масленицу!
Мы добрым гостям завсегда рады!
Мы их привечаем сладким чаем
Да блинами угощаем!

1-й – Эй, господа, пожалуйте сюда!
Приглашаем всех гостей
К нам на праздник поскорей! 2-й – Милости просим к нам на праздничные
гулянья
У нас сегодня представленье —
                                     Всем на удивленье.
3-й – Приходите все без стесненья:
Билетов не надо —
Предъявите хорошее настроение!
                                 4-й – Приходите, разомните
кости!
                          Сегодня Масленица приглашает в
гости!
5-й – Мы сегодня Масленицу встречаем, зиму
провожаем, весну
заклинаем!
Масленица –древнейший праздник на Руси,
корни которого уходят в глубь веков.
Масленица – это праздник прощания с зимой и
встречи Весны, Солнца, Жизни!
Ведущий:
Что ни лес, ни трава расстилается,
Под ногами лежат расстояньица,
Неоглядны российские стороны,
Ох, и буйны русские головы!
А земля-то духом объятая,
А Россия  - людьми то богатая!
Что ни лес, ни трава расстилается,
Праздник Масленицы …. НАЧИНАЕТСЯ!!!
6-й – Маслена - честная, веселая, широкая — так
называли неделю
перед Великим постом на Руси. Не было на Руси
семьи, дома,
двора, селения и города, где  бы  не  отмечали
масленичную
неделю.
7-й – Масленица была русским карнавалом,
справлявшимся
шумно, весело и разгульно. В народе называли
её “весёлой”, “широкой”, “пьяной”,
“обжорной”,”разорительницей”
8-й – С первых дней Масленицу старались
отпраздновать как
можно веселее, сытнее, богаче и радостнее.
Ведущая:
Каждый день масленичной недели имел своё
название и свои особые традиции
Ведущая: – День первый — понедельник —
встреча Масленицы.
Выезжала честная Масленица,
Широкая боярыня,
На семидесяти семи санях козырных,
В широкой лодочке
Во велик город пировать,
Душой потешиться.
Ведущий
 Едет Масленица дорогая!
Наша гостьюшка годовая!
Живет Масленица 7 деньков,
Оставайся с нами 7 годков!
Масленица – Спасибо, дорогие, что приветили!
Ведущая: – Дорогая наша гостья Масленица,
Прими от нас блинчиков,
Блинчиков поджаристых.
С добром и миром тебя встречаем.
Масленица. – Встречайте меня сытостью и
довольством. Чем богаче
масленицу отпразднуете — тем богаче год будет.
Я — Масленица-кривошейка,
Встречайте меня хорошенько,
С блинами, с каравайцами, с вареничками.
   СТИХИ
1 – я – Душа ль ты моя, Масленица сахарные твои
уста, сладкая твоя речь! Приезжай , ко мне в гости на широкий двор
На горах покататься, в блинах  поваляться !
2 – я – Дорогая , наша гостья Масленица, Авдотья
Изотьевна!
Дуня белая, Дуня румяная! Коса длинная,
триаршинная,
Лента алая, двуполтинная!
3 – я – Платок беленький, новомоднекький, брови
черные, наведенные.
Шуба синяя, ластки красные, лапти частые,
головастые,
Портянки белые, набеленные! Ждали тебя,
Масленница, готовились.
4 – я – Масленница – кривошейка, встретим тебя
хорошенько.
С блинами, с каравайцами, с вареничками и с
печеным яйцом и с
песнями.
Ведущая: – Наша дорогая Масленица, надолго
ли ты к нам пришла?
Масленица – Всего на семь дней! Пришла к вам с
песнями, с играми да с
Плясками! Ой, уж весело будет! Эх, веселиться
хочу, а вы
готовы повеселиться?
Масленица – А теперь для тех кто замерз
потанцуем немного.
(Под мелодию русской народной песни дети по
показу взрослого выполняют простейшие
танцевальные движения.)
Выпал беленький снежок,
Соберемся все в кружок.
Все потопаем,
Все потопаем.
Будем весело играть,
Будем ручки согревать.
Все похлопаем,
Все похлопаем. Если холодно стоять,
Мы похлопаем опять
По плечикам,
По плечикам.
Чтобы стало нам теплей,
Будем прыгать веселей.
Все попрыгаем,
Все попрыгаем.
Масленица – Вот молодцы, хорошо
повеселились!
Масленица – Собирайся, народ, неделя «сырная»
идет!
Наступает день второй, весь наполненный игрой!
День потех и угощений, смеха, песен и веселья!
Подходи, торопись, вместе с нами веселись!
Ведущий 2 – Дети и взрослые ходили от дома к
дому, поздравляли с Масленицей.
Все ходили друг к другу в гости, пели песни,
шутили. В этот день
начинались игры и потехи.
Ведущая: – Затей у нас большой запас.
А для кого они? Для вас.
Ну, а с чего нам начинать:
Иль песни петь, или играть?
Масленица – Получайте безделушки,
Самодельные игрушки,
Кто задачку отгадает —
Сразу приз забирает.
КОНКУРС ЗАГАДОК
1. Всех  оденет,
А себя никогда. (ИГОЛКА С НИТКОЙ).
В одном месте метров двести. (КЛУБОК).
2. Четыре четырки,
Две растопырки,
Один вертун
И два — как яхонты. (КОШКА).
3. На весь мир хватает
И во все щели пролезает. (СВЕТ). 4. Ток железный, посад яровой. (БЛИН НА
СКОВОРОДЕ).
5. Слушайте внимательно,
Очень занимательно:
Чего нет в капусте,
Ни в свекле, ни в репе,
А есть в моркови,
Огурце, помидоре? (БУКВЫ “О”).
6. Один человек купил трех овец и заплатил 3
тысячи рублей. По чему
каждая овца шла? (ПО ЗЕМЛЕ).
7. Каким гребешком никто не
причесывается? (ПЕТУШИНЫМ).
8. Отчего гусь плавает? (ОТ БЕРЕГА).
9. Какой в реке камень? (МОКРЫЙ).
10. Летела стая гусей, одного убили. Сколько
осталось? (ОДИН).
11. Несла баба в корзине 100 яиц, а дно упало.
Сколько яиц осталось? (НИ ОДНОГО)
Ведущая 2:– Ой, было, давно это было. Да и по
сей день осталось.
Добры молодцы собирались на площади силой
своей померяться да
затеять кулачные бои, а то и посмотреть на бои
петушиные.
Приглашаем самых сильных посостязаться.
Игра «Петушиный бой». На
площадке рисуют круг, в который становятся 2
участника, левой рукой нужно держать свою
левую ногу, а правым плечом, без помощи рук,
вытолкнуть соперника из круга.
Масленица – А теперь еще одна старая русская
забава.
«Утка-Гусь». Дети стоят в кругу, руки держат за
спиной. Выбирается водящий, ему дают в руки
маленький мячик. Водящий стоит за кругом.
Музыка прерывается, кладет кому-то мячик в
руки и убегает. Тот у кого мячик догоняет его, ПОЕДИНОК  НА СКАМЕЙКЕ.
если не догонит, то сам становится водящим.
Ведущая: – А вот еще одна забава —
Победителя ждет слава!
Кто в беге в мешках победит,
Того скоморох наградит.
Проводится бег в мешках.
Ведущая 2: – А теперь для самых ловких
поединок на скамье.
Масленица – Хорошо повеселились, поиграли от
души, теперь и песни попеть можно.
Масленица – Я вижу, ребята собрались здесь
сильные, ловкие, умелые.
Трудно с ними состязаться, трудно их победить.
Устала я ,заморилась, проголодалась.
Ведущая 2: – Давай скорее объявлять! Среда —
«Лакомка», «Сладкоежка».
Родственники навещали друг друга семьями,
ходили в гости, лакомились блинами.
Ведущая: – Мы блинов давно не ели, мы
блиночков захотели. Да какая ж Масленица без
блинов горячих, без блинов румяных!
Конкурс “накорми блинами”.
Продолжи пословицу!
1.  Делу время,.......... (зал отвечает:...потехе
час)
2.  Землю красит солнце, ................а человека....
труд.
3.  Терпение и труд...................... все перетрут
4.  Семь раз отмерь, .....................один раз
отрежь
5.   Не имей сто рублей, ...............а имей сто
друзей
Ведущая 2: – Четверг назывался широкий, или
разгуляй-четверток. Веселье
усиливалось. Днем молодежь веселилась на
улице, разгуливая с песнями и гармониками или
устраивая хороводы. Вечером встречались на
вечеринках, гуляньях, которые сопровождались ЧАСТУШКИ.
песнями, частушками, плясками.
Ведущая: – Четверг — «Широкая Масленица».
Разгуляй-четверг придет, шутку, песню
принесет.
Походил уже по свету, лучше русской песни
нету!
Где песня поется, там легче живется!
Запевайте песню русскую, песню звонкую,
задушевную!
Масленица – Вы на ярмарке бывали?
А частушки там слыхали? Не слыхали?
Что за беда… Ребята, выходи сюда.
ПРОВОДИТСЯ  КОНКУРС  ЧАСТУШЕК.
Ведущий – Праздник наш вперед идет, и народ
не убывает!
Еще один подарок ждет тех, кто с нами
поиграет.
Юношей , парней, ребят вызываем на канат.
10 слева, 10 справа, только мускулы трещат!
Масленица расстелись!
Молодцы – поборись!
Подходи стар и млад,
Перетягивать канат!
Игра «Перетягивание каната».
Ведущий – Хватит петь да играть! Пора пятницу
объявлять!
Пятница — «Тещины вечерки»!
5-й день уж наступает, а народ не убывает!
К теще на блины идем
И друзей с собой ведем!
ВЫХОДИТ  ТЕЩА И ЗЯТЬ.
Зять. – Ах, на Масленицу, на пятый на денек,
Заглянуть хочу к тебе на огонек.
Обещала ты блинами угостить,
Даже доброе словечко подарить.
Отворяй-ка, теща, ворота!
Твой черед пришел для зятя хлопотать. ТЕЩА ВСТРЕЧАЕТ ЗЯТЯ.
Теща. – Петухи нонче рано запели,
Разбудили меня раньше раннего,
Красно солнышко подняло меня с печи,
Прилетел воробушек, на забор сел,
Прокликал, что мой зять одевается,
К милой теще в гости собирается.
Вед – А сейчас конкурс танцевальный.
Подходи сюда, народ, тот, кто пляшет, тот
вперед.
Согревал нас много раз развеселый перепляс.
ЗВУЧАТ ТАНЦЕВАЛЬНЫЕ МЕЛОДИИ «БАРЫНЯ»,
«ЛЕЗГИНКА», «ЯБЛОЧКО». ЖЕЛАЮЩИЕ
ТАНЦУЮТ, ЛУЧШИЕ — ПОЛУЧАЮТ ПРИЗЫ.
ПРОВОДИТСЯ АУКЦИОН.
Ведущая 2: – Суббота — золовкины посиделки.
Золовка — это сестра мужа Итак, в этот
субботний день молодые невестки принимали у
себя родных, а незамужних золовок старались
познакомить с неженатыми парьнями из своих
родных или друзей.
В этот день молодожены
Приглашали к себе в гости родных и потчевали
их угощением. Велись
разговоры о житье-бытье, мирились, если до
этого в ссоре находились.
Ведущая: – А в субботу не безделки
—«Золовкины посиделки»!
Красны девицы, вставайте, дорогих гостей
встречайте.
Ведущий – Погляди-ка, народ, к нам Весна идет!
Весна-красна — гость большой, хороший,
пречестный,
На ней платье новое, зеленое, тому платью и
цены нет,
Весне красной шлем привет.
Здравствуй, Весна-голубушка, Весна-красна.
Весна. – Здравствуйте и вы, люди добрые!
Я пришла к вам с радостью, с великой милостью. С рожью зернистой, с пшеницей золотистой,
С овсом кучерявым, с овсом усатым,
С черною смородиной, со цветами лазоревыми
Да с травушкой-муравушкой!
Масленица – Весну красную я знаю,
На нее и не серчаю.
Знаю, ждет тепла земля.
Уступлю ей место я.
Хоровод лишь заведу,
А потом от вас уйду.
Весна. – К вам весна-красна пришла
С солнышком-ведрышком
Из-за гор, гор высоких.
Знаю, рады вы весне,
Спойте песню обо мне.
Ведущая: – Вот и наступил последний день
Масленицы — воскресенье
«Прощеный день», В воскресенье народ
прощался с Масленицей.
В поле раскладывали костер из соломы и
сжигали куклу с Песнями. Пепел разбрасывали
пополю, чтобы на следующий год собрать
богатый урожай.
Ведущая 2: – В прощенное воскресенье ходили
друг к другу мириться и просили прощения, если
обидели раньше. Потом целовались и не
вспоминали об обидах.
Масленица. – Жаль мне с вами расставаться,
Но пришла пора прощаться.
Примите от меня земной поклон.
Ведущая 2: – Масленая весело гуляла, песни
играла,
Протянула до поста, а теперь прощай —
На тот год приезжай!
Ведущая: – Чтобы Масленица в новый год опять
показалась – с квасом и с блинами, с мягкими
пирогами, с веселыми играми и песнями надо
сжечь её чучело. А всем гостям я предлагаю положить в кармашек нашей Масленице
записочки с бедами и несчастьями.
Все:
Прощай, Масленица – плутовка,
Погостила ты у нас недолго,
Погостила всего семь деньков,
А мы думали, погостишь семь годков!
Прощай, Масленица, прощай, Широкая!
Ведущая:
Последний день масленичной недели назывался
«прощёным воскресеньем».  Родственники и
друзья ходили друг к другу не праздновать, а
просили прощения за умышленные и случайные
обиды и огорчения. При встрече (порой даже с
незнакомым человеком) полагалось
остановиться и с троекратными  поклонами
испросить взаимного прощения. В этот день
прощаются все обиды и оскорбления, ведь
встретить весну необходимо с чистой совестью.
СЖИГАЕМ МАСЛЕНИЦУ. ВОДИМ ХОРОВОД ПОД
ФОНОГРАММУ.
Ведущая 2: – До свиданья, до свиданья,
До свиданья через год!
Через год на это место
Приходи, честной народ.
Ведущая: – Будут снова чудеса,
Будут развлечения,
А теперь прощаемся
Все без исключения!
Ведущая 2: – Прошла Масленая,
Кончилось гулянье,
Идем теперь на отдыханье.
В этот день за окном мир
намного светлей,
Даже солнышко смотрит на нас веселей!
Призывает Господь всех
простить в этот день,
Чтобы жить всем нам стало
гораздо теплей.
Пусть не будет сегодня печали в
глазах,
И любовь торжествует в словах
и делах,
Пусть душа будет светом
прекрасным полна,
С воскресеньем прощеным! Дай
Бог вам добра!

file_name: Масленица.docx

intro:
Масленичная неделя традиционно проходит с народными гуляниями и вкусными угощениями. Зиму начинают провожать за восемь недель до Пасхи, по православному календарю в сыропустную неделю.

Завершает Масленицу или Масленку Прощенное воскресенье. В этой статье собраны частушки, стихи и песни, которые непременно пригодятся тем, кто принимает активное участие в праздновании Масленицы.

классное руководство

group: Педагогика

title: Сценарий "Масленица"


description:
Моя родословная
Направления поиска:
Объяснение специальных терминов
Выяснение тайны моего имени
Выявление родственных связей
Получение информации о близких людях
Построение родословного древа
что он означает?
1. Термины.
термин
родословная
родственники
поколение
 потомки
 предки
мама
папа
бабушка
дедушка
прабабушка
прадедушка
тетя
дядя
брат
сестра
двоюродный брат(сестра)
троюродный брат (сестра)
племянница (племянник)
свекор
свекровь
тёща
тесть
зять
невестка

description:
_____________________________________________________________________________
_____________________________________________________________________________
5. Мои   родители.  Биографические   сведения.   Где   учились,   какую   профессию
получили,   кем   работают,   в   чём   заключается   работа,   какую   пользу   людям
приносит эта профессия. Как познакомились? Увлечения.
Мама.
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________

description:
_____________________________________________________________________________
_____________________________________________________________________________
6. Родители моих родителей.
Бабушки.   Что   я   знаю   об   их   жизни?  Биографические   сведения.   История
возникновения семьи (как они познакомились с дедушкой, сколько детей вырастили и
т.д.).  Трудовой путь бабушки.
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________

description:
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
Дедушки. Биографические сведения. Трудовой путь. Увлечения.

description:
8. Герб моей семьи. Девиз.
_____________________________
_________________________________
_______________________________
_______________________________

description:
9. Календарь знаменательных дат в нашей семье. Наши любимые праздники.
10. Лента моей жизни.
рождение
11. Сочинение «Моя семья»

description:
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
_____________________________________________________________________________
12. Мое родословное древо

intro:
Проект нацелен на возникновение более близкого общения членов семьи, на рост интереса к истории предков, будет способствовать объединению детей и их родителей. Он призван способствовать укреплению духовных ценностей. После окончания проекта у учащихся и взрослых  будут сформированы начальные умения и навыки в изучении своей родословной, способах ее изображения и описания, в отборе и сохранении в семейном архиве наиболее ценных для следующих поколений материалов. Школьники познакомятся с понятиями «род», «родословная», «родственники», «поколение», «потомки», «предок», узнают историю возникновения имен и фамилий, составят ленту времени своей жизни, родословное древо, узнают о профессиях родителей, семейных увлечениях и традициях, вместе с родителями разработают свой фамильный герб, подберут семейный девиз.
У детей будут формироваться  коммуникативные умения: записывать рассказы взрослых, вести беседу, заниматься письмами, фотографиями, семейными реликвиями.
Совместная работа по реализации проекта сплотит коллектив детей, позволит им общаться на ином уровне.Данный документ предназначен для работы детей со своей родословной. Сюда заносится информация о семье.

воспитательная работа

group: Дисциплины

title: Проект "Моя родословная"


extracted_text:
Урок    мужества
                  «Пионеры –
герои»
Отечество. Родина-мать, нам ее защищать"

Тема: Урок мужества, посвящённый подвигу юных
патриотов России в годы Великой Отечественной войны.

Предварительная подготовка: подобраны фонограммы
песен на тему классного часа, вокальная группа
девочек разучила две песни,  отсканированы
фотографии воинов-афганцев и участников Чеченских
войн. Подготовлена слайд-презентация.
Цели:
познакомить детей с юными героями (пионерами)
Великой Отечественной войны 1941-1945 гг.;
развивать интерес к истории своей родины, чувство
патриотизма, вызывать яркий эмоциональный отклик на
произведения, используемые в сценарии;
воспитывать гордость за своих сверстников в годы
войны, любовь к Родине, своему
Воспитание патриотизма, гордости за свою Родину и её
героев.
Воспитание уважения и глубокой признательности
прошлым поколениям, отстоявшим ценой своей жизни
независимость нашей Родины.
воспитывать уважение к защитникам Отечества,
душевность и чувство сострадания к чужой боли.
Оборудование: В качестве сопровождения используется
компьютерная презентация.
ХОД УРОКА
Учитель:
Дорогие ребята, наш классный час в этом учебном году
мы посвящаем самому главному событию нашей страны дню  победы нашей страны над фашистской
Германией. Мы часто встречаем в книгах, слышим с
кино- и телеэкранов такие слова как “Отечество”,
“Родина”, “Родина-мать”. И каждый раз испытываем
подсознательный трепет и уважение к этим словам. А
какое значение имеют эти слова? Почему мы так
называем то место, где родились? Давайте обратимся
за поиском ответа к словам русского писателя,
исследователя русского языка Константина Ушинского:
“Наше Отечество, наша Родина, Родина-мать.
Отечеством мы зовём нашу страну потому, что в ней
жили испокон веков отцы и деды наши. Родиной мы
зовём потому, что в ней мы родились, в ней говорят
родным для нас языком и всё в ней для нас родное.
Матерью мы зовём её потому, что она вскормила нас
своим хлебом, вспоила своими водами, и, как мать,
защищает и бережёт нас от всяких врагов.
Много есть на свете, и кроме нашей страны, всяких
хороших государств и земель, но одна у человека
родная мать – одна у него и Родина.”
Более семи десятилетий , минуло с тех огненных лет.
Давно залечены военные раны. Наша страна
восстановлена. Она стала ещё прекраснее, ещё
величественнее. В честь погибших на войне во всех
населённых пунктах поставлены мемориальные доски,
горит вечный огонь. К сожалению, нынешняя молодёжь
оскверняет память людей, которые боролись и умерли
за наше счастье. Можно часто видеть, как возле
вечного огня выгуливают собак, о мемориальные доски
чистят обувь. Как горько осознавать, что память
погибших на войне за наше счастье, за мирное небо над
нашими головами, забывается и оскверняется
молодёжью.
Вам, кому ещё нет шестнадцати,
Вам, кто не знает, что такое война
К.Ушинский
Посвящается,
чтобы поняли,
чтобы помнили…
Учитель:
Каждый человек любящий свою Родину старается
сделать её ещё прекраснее, сильнее, богаче, а если
придёт опасность, то и защитить её своей грудью,
ценой собственной жизни. Ветер времени открывает самую страшную страницу
истории нашей страны – Великая Отечественная война.
Более 70 лет  назад отгремели последние залпы войны.
Фашистская Германия, развязавшая войну против
народов Европы, рухнула. Кто же такие фашисты и
откуда появились фашистские организации?
Грозный сорок первый… Как он изменил судьбы!
Обагрил кровью и слезами детство. Сделал короткими
жизни многих мальчишек и девчонок. Разрушил
светлые мечты…
Мужеством исполнены страницы истории нашей
Родины.
Но не может рассказать история, что чувствовала
семилетняя девочка, на глазах которой бомбой
разорвало сестру и брата… О чём думал голодный
десятилетний мальчик, варивший в воде кожаный
ботинок, глядя на трупы своих родных… Но дети в ту
суровую пору , были не только жертвами. .Они
становились и воинами. .За особые заслуги, мужество и
героизм, проявленные в борьбе с фашистами, они
удостоились званий Героев Советского Союза, получали
ордена, медали.
Война прошлась по детским судьбам грозно,
Всем было трудно, трудно для страны,
Но детство изувечено серьёзно:
Страдали тяжко дети от войны…
Учитель3:
А , были они , мальчишками и девчонками. И в указах о
награждениях никогда не упоминалось, что речь идёт о
детях. Их называли по имени и отчеству, как взрослых.
Почему?  Потому, что их воинская доблесть стояла в
одном строю, плечом к плечу с мужеством взрослых.
Пришел час – и они показали, каким огромным может
стать маленькое детское сердце, когда разгорается в
нем священная любовь к Родине и ненависть к ее
врагам. Мальчишки.  Девчонки.  На их хрупкие плечи
легла тяжесть невзгод, бедствий, горя военных лет. И
не согнулись они под этой тяжестью!
Маленькие герои большой войны. .Они сражались
повсюду. Их повзрослевшее детство было наполнено
такими испытаниями, что сегодня этому трудно
поверить. Но это было. Было в истории большой нашей
страны, было в судьбах ее маленьких граждан – обыкновенных мальчишек и девчонок. И назвали их
люди героями.
Учитель:
Нашему народу выпало тяжкое испытание, он принял
его! Сегодня мы вспомним Дни воинской славы России
из календаря Великой Отечественной войны. Свидетели
и творцы этой славы еще живы и хорошо помнят, как
нелегко далась нам самая великая наша победа.
Разговаривайте с ними о днях их молодости почаще,
ведь ветераны не вечны, они уйдут, а с ними уйдет
живая память о Великой Отечественной войне. Примеры
их неподдельного мужества должны навсегда
оставаться в наших сердцах, ибо благодаря нему живёт
и наша Россия.
Под вечер в гестапо её привели.
Прикладами били сначала.
Стояла она чернее земли,
Как каменная, молчала.
Когда ей руки стали ломать
На исходе бессонной ночи,
Плюнула партизанская мать
Немцу в бесстыжие очи.
Сказала (были острые, как нож,
Труд твой напрасный.
Глухие её слова);
Меня убьёшь –
Россия будет жива.
Множила племя своё.
Россия тысячу лет жила,
Сила твоя, убийца, мала,
Чтобы убить её!
Много героев было у нашей Отчизны в годы Великой
Отечественной войны, но сегодня я хочу поговорить с
вами о ваших сверстниках времён тех страшных лет.
Когда началась война, в боевой строй встали не только
взрослые мужчины и женщины. На защиту России
поднялись тысячи мальчиков и девочек, твоих
ровесников. Они порой делали то, что не под силу было
сильным мужчинам.
Что руководило ими в ту грозную пору? Тяга
к приключениям? Ответственность за судьбу своей
страны? Ненависть к оккупантам? Наверное, все вместе.
Они совершили истинный подвиг. И мы не можем
не вспомнить имена юных патриотов. Ученик :
Юные , безусые герои,
Юными остались вы навек.
Перед вашим вдруг ожившим строем
Мы стоим, не поднимая век.
Боль и гнев,  сейчас тому причиной.
Благодарность вечная вам всем,
Маленькие стойкие мужчины,
Девочки,  достойные поэм.
Юные, совсем юные, мальчишки и девчонки, те, кому в
41-м было чуть побольше, чем нам сегодня, те, кто на
груди с гордостью носил пионерский галстук или
комсомольский значок, совершили бессмертные
подвиги. И мы с благодарностью вспоминаем, тех
мальчишек и девчонок, что шли вперед, и падали и
пели. Вместе со взрослыми сражались в партизанских
отрядах дети Герои Советского Союза: Лёня Голиков,
Зина Портнова, Марат Казей, Валя Котик , Василий
Коробко, Витя Хоменко, Галя Комлева, Юта
Бондаровская, Саша Ковалев,
Нина Куковерова, Лара Михеенко, Саша Бородулин,
Витя Коробков и многие другие.
(Тексты к фотографиям читают ученики)
Валентин Котик
В свои 12 лет Валя, тогда пятиклассник Шепетовской
школы, стал разведчиком в партизанском отряде.
Он бесстрашно пробирался в расположение вражеских
войск, добывал для партизан ценные сведения о постах
охраны железнодорожных станций, военных складах,
дислокации вражеских подразделений. Не скрывал
своей радости, когда взрослые брали его с собой
на боевую операцию. На счету Вали Котика шесть
взорванных эшелонов врага, множество успешных
засад. Он погиб в 14 лет в неравном бою с фашистами.
К тому времени Валя Котик уже носил на груди ордена
Ленина и Отечественной войны I степени, медаль
“Партизану Отечественной войны” II степени. Такие
награды сделали бы честь даже командиру
партизанского соединения. А тут пацан, подросток. Мы вспомним о болях тех давних.
В них совершен был подвиг не один.
Вошёл,  в семью героев наших славных
Отважный мальчик Котик Валентин
Он, как при жизни, утверждает смело
“Бессмертна молодость, бессмертно наше
Валентину Котику посмертно присвоено
звание Героя Советского Союза.
дело”.
Василий Коробко
Необычно сложилась партизанская судьба
шестиклассника из села Погорельцы Васи Коробко.
Боевое крещение он принял летом 1941 года,
прикрывая огнем отход наших частей. Сознательно
остался на оккупированной территории. Однажды
на свой страх и риск подпилил сваи моста. Первый же
фашистский бронетранспортер, который заехал на этот
мост, рухнул с него и вышел из строя. Потом Вася стал
партизаном. В отряде его благословили на работу
в гитлеровском штабе. Там никто и подумать не мог, что
молчаливый истопник и уборщик прекрасно запоминает
все значки на вражеских картах и ловит знакомые
со школы немецкие слова. Все, что Вася узнавал,
становилось известным партизанам. Как-то каратели
потребовали от Коробко, чтобы он привел их к лесу,
откуда партизаны делали вылазки. А Василий вывел
гитлеровцев к полицейской засаде. В темноте каратели
приняли полицаев за партизан и открыли
по ним огонь, уничтожив немало
предателей Родины.
Впоследствии Василий Коробко стал
отличным подрывником, принял участие
в уничтожении девяти эшелонов с живой
силой и техникой врага. Он погиб, выполняя
очередное задание партизан. Подвиги
Василия Коробко отмечены орденами
Ленина, Красного Знамени, Отечественной войны
I степени, медалью “Партизану Отечественной войны”
I степени.
Витя Хоменко
Как и Василий Коробко, семиклассник Витя Хоменко
делал вид, что прислуживает оккупантам, работая
в офицерской столовой. Мыл посуду, топил плиту, протирал столы. И запоминал все, о чем говорят
офицеры вермахта, расслабленные баварским пивом.
Добытые Виктором сведения высоко ценились
в подпольной организации “Николаевский центр”.
Гитлеровцы приметили смышленого расторопного
мальчика и сделали его посыльным при штабе.
Естественно, партизанам становилось известным все,
что содержалось в документах, которые
попадали в руки Хоменко.
Вася погиб в декабре 1942 года,
замученный врагами, которым стало
известно о связях мальчика с партизанами.
Несмотря на самые страшные пытки, Вася
не выдал врагам расположение
партизанской базы, свои связи и пароли.
Витя Хоменко посмертно удостоен
ордена Отечественной войны I степени.
Галя Комлева
В Лужском районе Ленинградской области чтут память
отважной юной партизанки Гали Комлевой. Она, как
и многие ее сверстники в военные годы, была
разведчицей, снабжала партизан важными сведениями.
Фашисты выследили Комлеву, схватили, бросили
в камеру. Два месяца непрерывных допросов, побоев,
издевательств. От Гали требовали назвать имена
партизанских связных. Но пытки не сломили девочку,
она не проронила ни слова. Галя Комлева была
безжалостно расстреляна. Она посмертно
награждена орденом Отечественной войны
I степени.
Юта Бондаровская
Война застала Юту на каникулах
у бабушки. Еще вчера она беззаботно
играла с подружками, а сегодня
обстоятельства потребовали от нее взяться
за оружие. Юта была связной, а потом разведчицей
в партизанском отряде, который действовал
на Псковщине. Переодевшись мальчишкой-нищим,
хрупкая девочка бродила по вражеским тылам,
запоминая расположение боевой техники, постов
охраны, штабов, узлов связи. Взрослым никогда
не удалось бы так ловко обманывать бдительность
врага. В 1944 году в бою у эстонского хутора Юта Бондаровская пала смертью храбрых вместе со своими
старшими товарищами. Юта посмертнонаграждена
орденами Отечественной войны I степени
и медалью “Партизану Отечественной
войны” I степени.

Саша Ковалев
Он был выпускником Соловецкой школы
юнг. Свой первый орден — орден Красной
Звезды Саша Ковалев получил за то, что
моторы его торпедного катера №209
Северного флота ни разу не подвели
во время 20 боевых выходов в море. Второй награды,
посмертной, — ордена Отечественной войны I степени —
юный моряк был удостоен за подвиг, которым вправе
гордиться взрослый человек. Это было в мае 1944 года.
Атакуя фашистский транспортный корабль, катер
Ковалева получил от осколка снаряда пробоину
коллектора. Из разорванного кожуха била кипящая
вода, мотор мог заглохнуть в любую минуту. Тогда
Ковалев закрыл пробоину своим телом. На помощь ему
другие моряки, катер сохранил
подоспели
Но Саша погиб. Ему было
ход.
15 лет.
Куковерова
Нина
с гитлеровцами она начала
Свою войну
анения листовок
с распростр
в оккупиров
анном врагами поселке. В ее
листовках
были правдивые сводки
с фронтов, которые вселяли в людей веру в победу.
Партизаны доверили Нине разведывательную работу.
Она отлично справлялась со всеми заданиями.
Гитлеровцы решили покончить с партизанами. В одну
из деревень вошел карательный отряд. Но его точная
численность и вооружение не были известны
партизанам. Нина вызвалась разведать силы врага. Она
запомнила все: где и сколько часовых, где хранятся
боеприпасы, сколько у карателей пулеметов. Эти
сведения помогли партизанам разгромить врага. Прерванная войной учеба, клятва мстить оккупантам
до последнего вздоха, партизанские будни,
разведывательные рейды по вражеским тылам, засады,
взрывы эшелонов… Разве что смерть была разной.
Кому-то
кому-то
подвале.
Лара
выпадала прилюдная казнь,
выстрел в затылок в глухом
Михеенко стала партизанкой-
разведчицей. Выведывала
расположение вражеских
считала машины, двигавшиеся
у в сторону фронта,
какие поезда, с каким грузом
на станцию Пустошка. Лару
Во время выполнения очередного задания
Нину выдал предатель. Ее пытали.
Не добившись от Нины ничего, фашисты
расстреляли девочку. Нина Куковерова
посмертно награждена
орденом Отечественной войны I степени.
Лара Михеенко
Их судьбы похожи, как капли воды.
батарей,
по большак
запоминала,
приходят
выдал предатель. Гестаповцы не делали скидок
на возраст — после бесплодного допроса девочку
расстреляли. Это случилось 4 ноября 1943 года. Лару
Михеенко посмертно наградили орденом Отечественной
войны I степени.
Саша Бородулин
Уже зимой 1941-го он носил на гимнастерке орден
Красного Знамени. Было за что. Саша вместе
с партизанами дрался с гитлеровцами
в открытом бою, участвовал в засадах,
не раз ходил в разведку.
Партизанам не повезло: каратели
выследили отряд, взяли в кольцо. Трое
суток партизаны уходили
от преследования, прорывали окружение.
Но каратели вновь и вновь преграждали
им путь. Тогда командир отряда вызвал
пятерых добровольцев, которые должны
были огнем прикрыть отход основных партизанских сил.
На призыв командира Саша Бородулин шагнул из строя
первым. Отважной пятерке удалось на какое-то время задержать карателей. Но партизаны были обречены.
Последним погиб Саша, шагнув навстречу врагам
с гранатой в руках.
Витя Коробков
Двенадцатилетний Витя был рядом со своим отцом,
армейским разведчиком Михаилом Ивановичем
Коробковым, действовавшим в Феодосии. Витя, чем
мог, помогал отцу, выполнял его боевые поручения.
Бывало, и сам проявлял инициативу: расклеивал
листовки, добывал сведения о расположении
вражеских частей. Его арестовали вместе с отцом
18 февраля 1944 года. До прихода наших войск
оставалось совсем чуть-чуть. Коробковых бросили
в старокрымскую тюрьму, две недели выбивали
из разведчиков показания. Но все усилия
гестаповцев оказались напрасными…
Сколько же их было?
Мы рассказали лишь о немногих из тех,
кто, не дожив до своего совершеннолетия,
отдал жизнь в борьбе с врагом. Тысячи,
десятки тысяч мальчишек и девчонок
пожертвовали собой ради победы.
Таня Савичева. Она жила в блокадном
Ленинграде. Умирая от голода, Таня отдавала
последние крошки хлеба другим людям, из последних
сил носила песок и воду на городские чердаки, чтобы
было чем тушить зажигательные бомбы. Таня вела
дневник, в котором рассказывала о том, как умирала
от голода, холода, болезней ее семья. Последняя
страничка дневника осталась недописанной: умерла
сама Таня.
Мария Щербак. Ушла на фронт в 15 лет под именем
своего погибшего на фронте брата Владимира. Стала
пулеметчицей 148-й стрелковой дивизии. Мария
закончила войну старшим лейтенантом, кавалером
четырех орденов.
Аркадий Каманин. Он был воспитанником авиаполка,
в 14 лет впервые сел в боевой самолет. Летал стрелком-
радистом. Освобождал Варшаву, Будапешт, Вену.
Заслужил три ордена. Спустя три года после войны
Аркадий, когда ему было всего 18 лет, умер от ранений.
Сколько же их было? Сколько юных патриотов
сражалось с врагом наравне с взрослыми? Этого точно
не знает никто. Многие командиры, чтобы не наживать неприятностей, не заносили фамилии юных бойцов
в ротные и батальонные списки. Но от этого
героический след, оставленный ими в нашей военной
истории, не стал бледнее.
У наших побед нет срока давности, на них
воспитывались , и будут воспитываться новые
поколения русских бойцов, которым откроется
возможность вписать свои страницы в военную историю
Отчизны.
Воспоминания детей тех  огненных
лет…
…Дом сожгли. Осталась одна пуговица от маминой
кофты. А в печи две булки теплого хлеба…
…Отца разрывали немецкие овчарки, а он кричал:
“Сына уведите, сына уведите, чтоб не смотрел ”. А я,
все видел. .И  все , помню…
…Отца вытолкали на улицу, я бежала за ним босиком и
кричала: “Папочка, папа!” А бабушка дома причитала.
Она не смогла пережить смерть отца, плакала все тише
и тише, и через две недели умерла, а рядом спала я и
обнимала ее мертвую. В доме больше никого не
осталось…
       Из письма пятнадцатилетнего бойца
Петра Крылова матери.
«….Меня посадили в чулан и сказали, что жить мне
осталось одну ночь. Дорогая мама, мне только
шестнадцатый год пошёл и вся жизнь впереди, но всё
равно я решил фашистам ничего не говорить. Пускай
лучше убивают. Утром приходит солдат и требует
показать дорогу на Филимоново. Как сказали на
«Филимоново», так у меня сразу в голове план
сложился. Я согласился. Как стали мы подъезжать к
Филимоново, я даже вспотел, потому что у самой
околицы мины были заложены. , Я сам видел, как наши
сапёры минировали дорогу. Спрашивают меня немцы:
«как лучше тут проехать? Я прямо на это место
показываю, а сам глаза закрываю. И вот тут ,
произошёл , взрыв. Но я дорогая мама, остался жив, и
только меня в голову ушибло…»
Учитель: Пионеры и тысячи их
Беззаветно служили народу
Кто погиб за страну и свободу.
Их могилы ты всюду найдешь
На дорогах минувших пожарищ.
То сними свою шляпу, товарищ!
Если ты, юный друг, где-то рядом пройдешь
Это ваши сверстники! А им тогда было столько лет,
сколько сегодня вам! И пусть каждый задаст себе
вопрос: «А я мог бы поступить так?»…
Сколько храбрых сердец молодых
Учитель :
Слова “Никто не забыт, ничто не забыто” - близки и
понятны каждому. Прошло много лет, а интерес к
подвигам отважных не угасает. После войны в нашей
стране тысячи красных следопытов объединились в
кружки и клубы.
Они проводили большую патриотическую и
воспитательную работу, разыскивали новые материалы
о боевых подвигах защитников Родины. А главное – они
закаляли свою волю, обогащались духовно, росли
верными патриотами своей Отчизны, верными
продолжателями дела своих отцов, своего народа.

Учитель:
А может, нам о них забыть
Опять война,
Опять блокада..
Я слышу иногда:
“Не надо,
Не надо раны бередить.
Ведь это правда, что устали
Мы от рассказов о войне
И о блокаде пролистали
Стихов достаточно вполне”.
И может показаться:
Правы
И убедительны слова.
Но даже если это правда,
Такая правда -
Не права!
Чтоб снова
На земной планете
Не повторилось той войны, Нам нужно,
Чтобы наши дети
Об этом помнили,
Как мы!
Вывод: Ученики делятся впечатлениями о услышанном
и увиденном на экране, обсуждают подвиги пионеров –
героев и рассуждают о том, смогли бы они совершить
что-нибудь подобное в свои юные годы.
Вечная Память Героям. Ничто не забыто, никто не
забыт!
Ученик:
Учитель: На этом, наш    в этом году урок мужества
закончен.
Р. Рождественский
Пожалуйся, помните!
Люди! Покуда сердца стучатся,
Какой ценой завоёвано счастье,
Объявляется минута молчания.
Песню свою, отправляя в полёт,
О тех, кто уже никогда не споёт,
Помните.
Помните!
Помните!

file_name: ПИОНЕРЫ  ГЕРОИ.docx

intro:
Цель:познакомить детей с юными героями (пионерами) Великой Отечественной войны 1941-1945 гг.;
развивать интерес к истории своей родины, чувство патриотизма, вызывать яркий эмоциональный отклик на произведения, используемые в сценарии;
воспитывать гордость за своих сверстников в годы войны, любовь к Родине, своему
Воспитание патриотизма, гордости за свою Родину и её героев.
Воспитание уважения и глубокой признательности прошлым поколениям, отстоявшим ценой своей жизни независимость нашей Родины.
воспитывать уважение к защитникам Отечества, душевность и чувство сострадания к чужой боли.
  сформировать представление о мужестве, долге, чести, ответственности, нравственности, понимание того, что без патриотизма невозможно привести Россию к возрождению.Урок Мужества раскрывает перед детьми значение празднования Дня Победы, показывает, что Великая Отечественная война была войной освободительной, воспитывает чувство патриотизма, любви к своей Отчизне на примерах участников Великой Отечественной войны, учит уважать тех, кто защищал Родину от фашизма.Данное мероприятие имеет как образовательную, так и воспитательную направленность, так как способствует формированию личностных качеств, гражданской позиции, уважения к старшему поколению, поднятию авторитета армии,  развивает личностные качества, общий кругозор.
Данное мероприятие способствует развитию творческих способностей учащихся (умение петь, выразительно читать стихи). В ходе подготовки к его проведению учащиеся могут самостоятельно подбирать песенный репертуар, а так же предлагать свои варианты оформления комнаты, для проведения урока.
Главным ожидаемым результатом мероприятия данного характера может служить то, что у учащиеся сформируется правильное представление  о настоящем гражданском  и патриотическом долге, мужестве, героизме, а так же может развиться   интерес к истории своей Родины.

title: Урок    мужества  «Пионеры – герои»


file_name: Методическое пособие Ассемблер.doc

description:
Министерство образования Московской области
Государственное образовательное учреждение высшего образования Московской
области «Государственный гуманитарнотехнологический университет»
(ГГТУ)
ЛикиноДулевский политехнический колледж – филиал ГГТУ
Методическое пособие
Тема: «Использование Ассемблера в Паскале при решении задач»
Составил: преподаватель
спец.дисциплин  Пронина А.Ю.

description:
Методическое   пособие     по   теме   «Использование   Ассемблера   в   Паскале   при   решении
задач» предназначено для теоретической и практической, а также самостоятельной подготовки
студентов   по   специальности:  09.02.03   «Программирование   в   компьютерных   системах»,
09.02.05 «прикладная информатика (по отраслям)» среднего профессионального образования.
Методическое пособие  формирует базовые знания:
  основные понятия языка Ассемблер;
команды и операторы языка Ассемблера;

Для   закрепления   теоретических   знаний   и   приобретения   необходимых   практических
навыков и умений предусматривается проведение практических занятий и лабораторных работ.
Для лучшего усвоения учебного материала его изложение необходимо проводить с применением
технических и аудиовизуальных средств обучения. Для проверки и контроля по теоретическим
знаниям методическое пособие содержит контрольную работу.
3

description:
Тема №1 «Язык программирования Ассемблер.  Использование Ассемблера в
Теоретическая часть.
Паскале»
Язык   программирования   Ассемблер      символьная   форма   записи   машинного   языка,   его
использование существенно упрощает написание машинных программ.
 На  языке Ассемблер пишут:
 Все что требует максимальной скорости выполнения (компоненты компьютерных игр,
ядра операционных систем реального времени).
 Все что взаимодействует с внешними устройствами (драйвера, программы, работающие
на прямую с портами, звуковыми и видео платами).
 Все   что   использует   полностью   возможности   процессора   (ядра   многозадачных
операционных   систем   и   любые   программы,   переводящие   процессор   в   защищенный
режим).
 Все   что   полностью   использует   возможности   операционной   системы   (вирусы   и
антивирусы,   защиты   от   несанкционированного   доступа,   программы     обходящие   эти
защиты).
 Многое   другое   (как   оказывается,   что   многое   из   того,   что   обычно   пишут   на   языке
высокого уровня лучше, проще, быстрее записать на Ассемблера).
Выполнение программы написанной на языке Ассемблере осуществляется в 2 этапа:
1. Трансляция – переводит программу на машинный язык.
2. Счет – выполнение программы.
Команды   языка   Ассемблера   обычно   представляют   совокупность   нескольких   программ
процессора.   При   использовании   Ассемблера   в   Паскале   результирующим   компилятором
добавляются   компоненты,   обеспечивающие   корректную   работу   программы,   а   значит   и
командного процессора. Все это позволяет  быстро и качественно разрабатывать программные
продукты. Однако лишние компоненты в результирующей программе увеличивают ее объем. Ее
объем   снижает   быстродействие   компьютера.   При   разработке   программных   продуктов
используется только те команды, которые предусмотрены разработчиками языка, в то время как
процессор может иметь более широкие возможности.
4

description:
Каждая   команда   ассемблера   сопоставляется   одной   команде   процессора   и   эти   команды
можно разделить на следующие группы:
1. операции перемещения информации между ячейками оперативной памяти и ячейками
памяти процессора (регистры)
2. выполнение команд процессора над информацией находящейся в его регистре
3. вызов системных функций О.С. (прерывание)
В   результате   компиляции   и   построения   программ   на   Ассемблере   получается
результирующий исполняющий файл. Такие программы отличаются высоким быстродействием и
малым объемом занимаемой оперативной памяти. Исходные тексты программ на Ассемблере
имеют размер, значительно превосходящий размер текстов программ на языке высокого уровня.
Таким образом, очень удобно сочетать язык высокого уровня и Ассемблер в одной программе.
Использование команд Ассемблера в программе Паскаль.
                         Встроенный ассемблер в Паскале позволяет непосредственно в программах
Паскаля записывать код ассемблера. Команды Ассемблера могут использоваться в любом месте
программы   наравне   с   обычными   командами   Паскаля.   Каждая   команда   Ассемблера   должна
находится в отдельной строке, и не отделятся точкой запятой в отличие от Паскаля.
  Встроенный ассемблер становится доступным с помощью оператора:
Asm
end;
<Команда Ассемблера>
…
Различие между Ассемблером и Паскалем.
Большинство важных различий между выражениями встроенного ассемблера состоит в
том,   что  выражение   встроенного   ассемблера,   должны   при   вычислении,   сводится   к  значению
константы, другими словами к значению которые можно вычислять на этапе компиляции
Например, с учетом описания переменных как констант
Const
x:=10;
y:=20;
Var  z: integer;
Begin
5

description:
asm
mov z,x+y
end;
Поскольку  X  и  Y  это константы выражение  x+y  представляет собой удобный способ
записи константы 30 и получается в результате инструкции, помещает значение 30 в переменную
Z.   Если   описать  Y  и  X  как   переменные   то   встроенный   Ассемблер   не   сможет   на   этапе
компиляции вычислить значение x+y, тогда запись будет следующей:
Var x,y,z :integer;
Begin
x:=10;
y:=20;
asm
mov Ax,x
Add Ax,y
mov z,Ax
end;
end.
Другим   важным   отличием   выражений   паскаля   и   встроенного   Ассемблера   является
способ   интерпретации   переменных.   В   выражение   в   Паскале   ссылка   на   переменные
интерпретируется   как   содержимое   переменной.   Но   в   Ассемблере   ссылка   на   переменную
означает адрес переменной.
Например, в Паскале выражение х+4 где х переменная означает содержимое суммы х и 4 ,а в
Ассемблере х будет находиться на 4 байта выше.
Тема №2 «Регистры процессора»
Процессор   имеет   собственную   область   памяти   ячейки,   в   которой   хранят   информацию
необходимую   для   выполнения   команд   процессора.   Эти   ячейки   называются  регистрами  и
представляют собой двухбайтовые ячейки памяти.
Регистры делятся на следующие группы:
6

description:
 Регистры   данных  –   предназначены   для   временного   хранения   любой   информации   и
обмена системными функциями Ms – Dos. Регистры данных имеют название Ах, Вх, Сх,
Dx. Особенностью регистров данных являются возможность разделения обращения их к
старшим и младшим байтам. Старший байт имеет значение АH,BH,CH,DH, а младший –
AL ,BL,CL,DL
 Регистры указатели  – предназначены для хранения адресов ячейки памяти в формате
<сегмент> : <смещение>. При передачи параметров данных системных функций  Ms  –
Dos.
BP,SP,SI,DI
 Сегментные   регистры   –  определяют   расположение   программы   в   сегментах   памяти.
Делятся на 4е группы:
1.регистр сегмента команд CS
2.регистр сегмента данных  DS
3.регистр дополнительного сегмента данных ES
4.регистр сегмента стека SS
 Регистр   указания   команд  IP  –  предназначен   для   указания   относительного   адреса
команды следующей за выполняемой в данный момент команды.  IP  не имеет прямого
доступа к адресам команд.
 Регистр флагов – Flags
Эти   регистры   содержат   некоторые   результат   последней   выполняемой   команды,
используется при выполнении большинства команд.
Флаг – это бит принимающий значение 1(истина), если флаг установлен и 0(ложь) если
флаг не установлен.
Флаги делятся на две категории:
1. флаги условий – автоматически меняются при выполнении программы и фиксирует
результаты, что позволяет проанализировать результаты команды. К этой категории
относятся следующие флаги AF, PF, SF, ZF, OF, CF
2. Флаги состояния – сами по себе они не меняются, а меняет их программа. Состояние
этих   флагов   оказывает   влияние   на   дальнейшее   поведение   процессора.   К   этой
категории относятся следующие флаги   DF, IF, TF
7

description:
Тема №3 «Идентификаторы. Целые числа, предложения и символьные
данные в Ассемблере»
I.
Идентификаторы.

Это последовательность из латинских букв, цифр и некоторых знаков для обозначения
различных объектов программы (переменных, операций, меток, регистров).
На идентификаторы  накладываются следующие ограничения:
1. Длина идентификатора может быть любой, но в программе учитываются только первый 31
символ.
2. Они не могут начинаться с цифры.
3. Только может быть только первым символом идентификатора.
4. В идентификаторах большие и малые буквы являются эквивалентными.
5. В идентификаторах нельзя использовать буквы русского алфавита.
Идентификаторы делятся на две группы:
    1.служебные слова (операции, регистры)
    2.имена – все остальные индефикаторы.
II.
Целые числа
могут   быть   записаны   в   десятичной,   двоичной,   восьмеричной   и   шестеричной   системах
счисления.     Десятичная   система   счисления   записывается   без   всяких   спецификаторов,   но   в
других системах счисления в конце числа ставится спецификатор.
Спецификатор – буква, которая указывает систему счисления, к которой относится это
число.
B – двоичная система
Q – восьмеричная система
H – шестнадцатеричная система
III.
Символьные данные.
В   качестве   символов   могут   быть   использованы   буквы   латинского   алфавита.
Последовательность символов составляет строку, символы заключаются либо в одинарные, либо
8

description:
в двойные кавычки; так же и строки заключаются в кавычки. В строке одноименные большие и
малье буквы  не эквивалентны.
Если  в качестве символа внутри строки нужно указать кавычку, то строку заключают в
одинарные кавычки, а внутри ставят двойные  (‘ABC ”K” ’).
IV.
Предложения.
Программа на ассемблере, это последовательность предложений, которые записываются в
отдельной   строке.   Переносить   предложения   на   следующую   строку   или   записывать   в   одной
строке два предложения нельзя.
Все предложения делятся на три группы:
1. комментарии – предназначены для пояснений нужной команды или действия.
Комментарии не влияют на смысл программы, и при трансляции ассемблер их не читает.
Комментарии начинаются с    “ ; ”
Пример:
               ;сложение числа
               mov ax,5
               add 10
               mov z, ax

2. Команда   предложения   –   это   символьная   форма   записи   машинных   команд.   К   ним   в
основном относятся метки, которые предназначены для ссылок на команды из других
мест программы.
Пример:
Lab:
add SI ,2 ; изменение индекса
3. Директивы – представляют собой приказы ассемблера.
Пример:
X DX 10,5,6 ; присвоит массиву Х значения 10,  5, 6
Выражения встроенного ассемблера строятся из элементов выражений и операций,   а
каждая операция имеет соответствующий  класс выражения  и  тип выражения.
Выражения.
9

description:
Основными элементами  выражения являются константы, регистры  и идентификаторы.
             Выражения встроенного ассемблера подразделяются на три класса:
Классы выражений
1. регистровые  значения,
2. ссылки  на память
3. непосредственные        значения.
Выражение, состоящее только из имени регистра,  является регистровым значением.
Примерами   регистровых   значений   являются   AX,   CL,   DI   и   ES.   Используемые   в   качестве
операндов,   регистровые   выражения   указывают   ассемблеру   на   необходимость   генерировать
инструкции, которые работают с регистрами ЦП.
                         Выражения, обозначающие адреса памяти,   являются ссылками на память. К этой
категории   относятся   метки   Паскаля,   переменные,   типизованные   константы,   процедуры   и
функции.
                   Выражения, которые не являются регистровыми и не  связаны  с ячейками памяти,
представляют  собой  непосредственные значения. Эта группа включает в себя нетипизированные
константы и идентификаторы типа.
                         Непосредственные значения и ссылки на память при использовании их в качестве
операндов приводят к генерации различного кода.
        Например:
             const
               Start = 10;
             var
               Count: Integer;
                …
                …
                …
             asm
               mov        ax,Start           { MOV AX,xxxx }
               mov        bx,Count           { MOV BX,[xxxx] }
               mov        cx,[Start]         { MOV CX,[xxxx] }
               mov        dx,OFFSET Count    { MOV DX,xxxx }
             end;

10

description:
Поскольку   Start      это   непосредственное   значение,   первая   инструкция
  MOV
ассемблируется   в   непосредственную   инструкцию.   Однако   вторая   инструкция   MOV
транслируется в инструкцию,  ссылающуюся на память,  так как Count  это ссылка на память. В
третьей инструкции  MOV для преобразования Start  в ссылку  на  память  (в  данном         случае
слово   со   смещением   10   в   сегменте   данных)   используется   операция   квадратных   скобок.     В
четвертой инструкции MOV для преобразования  Count в непосредственное значение (смещение
Count в сегменте данных) используется операция OFFSET.
             Как вы  можете  видеть,  квадратные скобки и операция OFFSET  дополняют друг друга.
В терминах результирующего машинного   кода   следующий   оператор asm идентичен первым
двум строкам предыдущего оператора asm:
             asm
               mov       ax,OFFSET [Start]
               mov       bx,[OFFSET Count]
             end;
             Ссылки на память и непосредственные значения классифицируются, в свою очередь,  как
перемещаемые   и   абсолютные   выражения.   Перемещаемое   выражение   обозначает   значение,
которое   требует   на   этапе   компоновки   перемещения,   а   абсолютное   выражение   обозначает
значение, которое такого перемещения не требует. Обычно выражение со ссылкой на метку,
переменную процедуру или  функцию является  перемещаемым,    а выражение,    где операции
выполняются исключительно с  константами  абсолютным.
                         Перемещение является процессом, с помощью которого компоновщик присваивает
идентификаторам абсолютные адреса.  На этапе компоновки компилятору неизвестны конечные
адреса   метки,   переменной,   процедуры   или   функции.   Они   не   будут   известны   до   этапа
компоновки,  на  котором компоновщик присваивает идентификатору конкретный абсолютный
адрес.
                         Встроенный ассемблер   позволяет вам выполнять любую операцию с абсолютным
значением,     но   операции   с     перемещаемыми     значениями   ограничиваются   сложением   и
вычитанием констант.
              Каждое выражение встроенного ассемблера имеет  соответствующий тип,  или, если
говорить   точнее,   размер,   поскольку   встроенный   Ассемблер   рассматривает   тип   выражения
Типы выражений
11

description:
просто как его размер в памяти.   Например, тип (размер) переменной Integer равен 2, так как
она занимает два байта.
             Там, где это возможно,  встроенный ассемблер выполняет  проверку типов, поэтому в
инструкциях:
             var
               QuitFlag: Boolean;
               OutBufPtr: Word;
                …
                …
                …
             asm
               mov       al,QuitFlag
               mov       bx,OutBufPtr
             end;

встроенный ассемблер  проверяет,   что   размер   QuitFlag     равен     1 (байт), а размер
OutBufPtr  двум (слово). Если проверка типа обнаруживает несоответствие,  возникает ошибка.
Например, следующее  недопустимо:
             asm
               mov     dl,OutBufPtr
             end;
               так как DL  это байтовый регистр, а OutBufPtr  слово. Тип ссылки на память можно
изменить с помощью назначения типа. Корректным   способом записи предыдущих инструкций
будет следующий:
             asm
               mov     dl,BYTE PTR OutBufPtr
               mov     dl,Byte(OutBufPtr)
               mov     dl,OutBufPtr.Byte
             end;
             Все эти инструкции ссылаются на первый (менее значащий) байт переменной OutBufPtr.
             В некоторых случаях ссылка на память является нетипизированной,  то  есть не имеет
соответствующего типа.
Приведем пример с    непосредственным значением, заключенным в квадратные скобки:
12

description:
asm
               mov     al,[100H]
               mov     bx,[100H]
             end;
             Встроенный ассемблер  допускает обе этих функции,  поскольку выражение [100H] не
имеет соответствующего типа, оно просто означает   "содержимое по адресу 100H в сегменте
данных",   а тип можно   определить из первого операнда (байт для AL, слово для BX). В том
случае, когда тип нельзя определить из другого операнда, встроенный ассемблер требует явного
назначения типа:
             asm
               mov     BYTE PTR [100H]
               mov     WORD PTR [100H]
             end;
Тема №4 «Адресация»
Архитектура процессора позволяет использовать 7 различных способов адресации:
1. Регистровая – извлекает операнд из регистра или помещает его в регистр
Пример:
Mov AX, BX; извлекает из регистра ВХ содержимое и помещает его в АХ
    Add AX, BX; добавляет в регистр АХ содержимое ВХ
     Push CX ; помещает содержимое регистра СХ в стек.
2. Непосредственная – операнд содержится непосредственно в теле команды.
Пример:
Mov АХ, 5 ; поместить число 5 в регистр АХ
Add АХ, 100 ; добавить в регистр АХ  число 100
3. Прямая – смещение операнда задается в теле программы и складывается с регистром.
Пример:
Mov АХ, Х ; поместить в АХ значение переменной Х
Add АХ, В ; добавить в регистр АХ значение В
4. Косвенная
5. Адресация по базе
13

description:
6. Индексная
7. Адресация по базе с индексированием
Примеры:
1) Var Z: integer;
Begin
               Z: =10;
     asm
               Mov  Ax, 5 ; поместить 5 в регистр Ax
               Push Ax ; содержимое Ах поместить в стек
               Pop Z ; извлечь содержимое стека в переменную Z
    end;
    writeln (‘Z=’,Z);
    end.
2) Var Z : integer;
Begin
               Z:=10;
     asm
             Mov Ax, Z ; поместить значение переменной Z в регистр Ax
             add Ax, 5; добавить в регистр число 5
             Mov Z, Ax ; поместить значение регистра Ах в переменную Z
    end;
    writeln(‘Z=’,Z);
    end.
3) Осуществить вычитание двух чисел 10 и 5 через прямую адресацию
Var Z : integer;
Begin
          Z:=10;
asm
       Mov Ax, Z
14

description:
Sub Ax, 5
       Mov Z, Ax
end;
writeln (‘Z=’,Z);
end.
Тема №5 «Система команд Ассемблера»
Для   удобства   использования   все   команды   Ассемблера   можно   разделить   на   6
функциональных групп:
1. Команды пересылки данных
2. Арифметические команды
3. Битовые команды
4. Строковые команды
5. команды передачи управления
6. Команды прерываний
I.  Команды пересылки данных.

Формат
Mov приемник , источник
Push источник
Pop приемник
XCHG приемник, источник
Команды
                              1. команды общего назначения
Mov
Push
Pop
XCHG
2. Команды ввода  вывода
In
Out
3. команды пересылки флагов
Lahf
Sahf
Pushf
Popf
In аккумулятор, порт
Out Порт , аккумулятор
Описание
пересылка данных
поместить в стек
извлечь из стека
обменяться значениями
читать из порта
записать в порт
Загрузить флаг в регистр АН
извлечь флаги из АН
поместить флаги в стек
извлечь флаги из стека
15

description:
Одна   из   наиболее   часто   используемых   команд   это   команда  Mov  которая   позволяет
переслать байт или слово из регистра в регистр, из память в регистр или из регистра в память.
Тип пересылаемых данных определяется регистром участвующем в пересылке.
С помощью команды Mov нельзя пересылать:
1. из памяти в память
2. из регистра в тот же регистр
3. в регистр CS
Mov AX, Table; переслать слово Table из памяти в регистр Ах
Mov Table, Ah ; переслать байт из регистра АН в переменную Table
Mov DS, Ax ; переслать данные из регистра Ах в сегментный регистр DS
Для временного сохранения регистров и данных, а так же для обмена  значениями между
регистрами   широко   используются   стековые   команды  Push  и    Pop.   Каждая   из   этих   команд
работает только с данными, а не с байтами, поэтому нельзя поместить в стек одиночный байт.
Стек  Это специально отделенная область памяти для хранения промежуточных данных. Стек
пополняется снизу вверх (последний пришел – первым вышел).
Примеры:
1) Поместить значение Х в регистр Ах.
Задание: осуществить регистровую адресацию из регистра Ах в регистр Вх и вывести
результат в переменную У.
Var X,У:integer;
Begin
      x:=200;
          asm
                 mov ax,x
                 mov bx,ax
                 mov у,bx
         end;
         writeln(‘у=’,у);
         end.
16

description:
Поместить значение Х в регистр Ах.
2)
Задание: поместить содержимое  регистра Ах в  стек.
          Var X:integer;
Begin
      x:=200;
          asm
                mov ax,x
               push ax
          end;
          end.
3)
 Поместить значение Х в регистр Ах.
Задание: поместить содержимое  регистра Ах в  стек и    извлечь значение в переменную Х из
стека.
                    Var X:integer;
Begin
      x:=200;
          asm
               mov ax,x
               push ax
          pop x
          end;
           writeln(‘x=’,x);
          end.
II.  Арифметические команды

Команды Формат
1.Команды сложения
Add
Ing
2. Команды вычитания
Sub
Add приемник, источник
Ing приемник
Sub приемник, источник
Описание
Сложение чисел
Увеличение на единицу
Вычитание чисел
17

description:
Deg приемник
CMP приемник, источник
Mul источник
Deg
CMP
3. команды умножения
Mul
4. команды деления
Div
Aad
Div источник
Aad
Уменьшение на единицу
Сравнение чисел
Умножение чисел
Деление чисел
Кодировка
Примеры:
1) Сложить три числа 5,10,20 в регистре Ах, вывести результат в переменную Х.
Var X: integer;
Begin
         X:=5;
asm
        Mov Ax, x
       Add Ax, 10
       Add Ax, 20
       Mov X, Ax
end;
writeln (‘X=’,X);
end.
2) Осуществить умножение двух чисел 20 и 50, вывести результат в переменную Х.
Var y,z :integer;
Begin
X:=20;
Y:=50;
asm
mov Ax,x
mul y
mov x,Ax
end;
writeln(‘x=’,x);
end.
18

description:
3) Осуществить вычитание четырех чисел 50,13,4,20 в регистре Ах и вывести результат в
переменную Х.
Var x:integer;
Begin
    X:=50;
asm
      mov ax,x
      sub ax,13
      sub ax,4
      sub ax,20
      mov x,ax
end;
writeln(‘x=’,x);
end.
4) Осуществить деление числа 88 на 2, используя регистр Ах и  Bl. вывести результат в
переменную Х.
Var x:integer;
Begin
     x:=0808h;
asm
     mov ax,x
     mov bl,2
     aad
     div bl
     mov x,ax
end;
writeln(‘x=‘,x);
end.
5) Осуществить деление чисел 100 и 25, используя регистр Ах и  Bl, вывести результат в
переменную Х.
Var X: integer;
19

description:
Begin
         X:=100;
asm
       Mov ax, X
       Mov bl, 25
       Aad
                      Div Bl
       Mov X,Ax
end;
writeln (‘X=’,X);
end.
III.  Битовые команды.
Команды
1. логические команды
And
Or
Xor
Not
Test
Формат
Описание
And приемник, источник
Or  приемник, источник
Xor  приемник, источник
Not  приемник, источник
Test  приемник, источник
логическое умножение
логическое сложение
сложение с инверсией
логическое отрицание
проверить
Битовые   команды   используются,   при   исчислении   логических   выражений,   а   так   же   в   тех
случаях, когда необходимо изменить отдельные разряды операнда. Команды   And,  Or,  Xor,  Not
соответствуют операциям поиска в случае, когда операнд является целочисленным выражением.
Test  выполняет целочисленную операцию по разрядному суммированию и устанавливанию
флагов в соответствии со значением результата сравнения.
Формат
Команды
Операции над битами и байтами
BT
BTS
BTR
BSF
Bt база смещения
Bts база смещения
Btrбаза смещения
Bsf приемник, источник
Описание
проверка бита
проверка и установка бита
проверка и сброс бита
прямой поиск бита
Команда ВТ  считывает  во флаг  CF  значение бита из битовой строки указанной первым
операндом (т.е. битовой базой   это регистр или переменная). Далее указывается второй операнд,
20

description:
т.е. битовое смещение (число). Если бит, найден в заданной битовой строке, то на экран выводится
единица в противоположном случае ноль.
Команда
 BTS  использует   такие   операнды,   как   и   ВТ,   но   после   проверки   он   либо
устанавливает не найденный бит и выводит ноль, либо выводит единицу в противоположном случае.
Команда  BTR  после   нахождения   нужного   бита   его   удаляет   и   выводит   единицу,   ноль
выводится в противоположном случае.
Команда BSF сканирует источник (регистр, переменная) начиная с самого младшего бита и
записывает в приемник(регистр)номер найденного бита и выводит – 1, иначе – 0.
Примеры:
1) Сложить два двоичных числа 00111011 и 00001111, используя  регистр AL. Результат
вывести в переменную А.
Var a;integer;
begin
asm
Mov AL,00111011b
Or Al,00001111b
Mov a,AL
end;
Writeln(‘A=’,A);
end.
2) Умножить   два   числа     00111011   и   00001111,   используя     регистр  AL.   Результат
вывести в переменную А.
                Var a:integer;
                Begin
                asm
mov al,00111011b
and al,00001111b
mov a,al
end;
21

description:
writeln(‘a=’,a);
end.
3) Сделать отрицание числа 1101101011, используя   регистр  AL. Результат вывести в
переменную А.
                Var a:integer;
                Begin
                asm
mov al,1101101011b
not al
mov a,al
end;
writeln(‘a=’,a);
end.
4) Код программы проверки подключения принтера.
Var a:integer
Begin
asm
mov al,2 ; функция чтения состояния принтера
int 17h ; вызов из Bios функции прерывания 17h которая проверяет  состояния принтера и
возвращает значение в регистр AL
test al,00100000b ; ZF=0, принтер не подключен
mov a,al
end;
writeln(‘a=’,a);
end.
IV.  Команды передачи управления
Формат
Команды
Команды безусловного перехода
CALL
RET
JUMP
CАLL имя
RET  параметры
JUMP  имя
Описание
войти в процедуру
выйти из процедуры
переход на метку
22

description:
JA   близкая метка
JAE близкая метка
JB близкая метка
JBE близкая метка
JXCZ  близкая метка
JG  близкая метка
JGE  близкая метка
JL  близкая метка
JLE  близкая метка
JNE  близкая метка
JNP  близкая метка
JP  близкая метка
JS  близкая метка
Команды условного перехода
JA
JAE
JB
JBE
JXCZ
JG
JGE
JL
JLE
JNE
JNP
JP
JS
Команды управления циклами
LOOP   метка
LOOP
LOOPE   метка
LOOPE
LOOPNE
LOOPNE   метка

перейти если выше
перейти если выше и равно
перейти если ниже
перейти если ниже и равно
перейти если равно
перейти если регистр СХ=0
перейти если больше
перейти если больше и равно
перейти если меньше
перейти если меньше и равно
перейти если не четное
перейти если четное
перейти если отрицательное
повторять цикл
повторять пока не будет равно
повторять пока не будет не равно
Команды безусловного перехода могут использовать дальнюю или ближнюю модель памяти, в
то время как команда условного перехода могут использовать только ближнюю модель памяти в
пределах 121 байта.
Инструкция  Call  работает   следующим   образом.   В   начале,   адрес,     следующий   за  Call
инструкцией,  помещается в  стек, за тем в регистр  IP помещается адрес точки кодов процедуры,
таким образом, сразу за командой Call будет исполняться уже первая команда процедуры.
Процедура  это функция, которая возвращает значение. Все процедуры и функции Паскаля
содержат зарезервированное слова в заголовке, которое будет вызывать, как ближние, так и дальние
процедуры. Этим, словом является слово FAR.
Пример:
…………………………..
procedure MyProg;
………………………….
asm
Call Far MyProg
…………………………
end;
…………………………
23

description:
end.
Команда условного перехода способна передавать управление на метку расположенную в
пределах 121 байта от самой команды. Если нужно передать управление на метку расположенную
дальше, то сразу за командой условной передачи следует расположить безусловную команду Jump
или CALL.
Поскольку   условные   передачи   реализуют   ветвление   от   программы   на   основе   проверки
флагов, то обычно непосредственно перед ними располагается команда изменяющая эти флаги –
СМР.
Если   переход   делается   только   тогда,   когда   выполняются   некоторые   условия,   называют
условным.
Пример:
1) Сравнить 2 числа и выбрать из них наибольшее. Данные числа хранятся в регистрах Ах и
Вх соответственно. Найденное наибольшее значение поместить в регистр  Dx.
Mov dx, ax;       предположим, что в Ах храниться большее число
cmp ax, bx;        если Ах больше или равно Вх тогда
jaе Li;                 переход на метку Li
Mov dx, bx;       иначе помещается Вх в Dx
Li:
     mov dx,ax
2) Нахождение наименьшего из трех чисел, они хранятся в AL,BL,CL. Наименьшее значение
поместить в переменную Small.
L1: mov Small, al ; предположим что в Al наименьшее число
      cmp small, bl
      jbe L2 ; если small  <  или  = bl тогда переходим на L2 иначе помещаем в  small
     mov small, bl
L2: cmp small, cl ; если small < или  = CL тогда переход на L1
     jbe L1
     mov small, cl
24

description:
Команда Loope и Loopne служат для организации циклов.
Цикл это определенное число действий, которое выполняется несколько раз. Все команды
циклов используют регистр Сх, как счетчик числа повторений. Команда Loope уменьшает Сх на
1 и передает управление на метку начало цикла, если содержимое регистра Сх отлично от нуля.
Команда Loopne также уменьшает счетчик на 1, но передает управление не начало цикла, а на
определённое место в прорграмме при совместном условии установки флага  ZF и неравенства
нулю счетчика Сх.
V.
Строковые команды.
Команды
MOUSB
MOUSW
CHPSB
CHPSW
SCASB
SCASW
LODSB
LODSW
STOSB
STOSW
Формат
Пересылка строк
Сравнение строк
Команды сканирования строк
Загрузка строк
Сохранение строк
Описание
переслать байт
переслать слова
сравнить байт
сравнить слово
искать байт
искать слово
загрузить байт
загрузить слово
сохранить байт
сохранить слово
Строковые команды, рассчитанные на обработку строк. Строка обозначает произвольную
цепочку   байт   или   слов   длинной   до   64   Кбайт.   При   использовании   строковых   команд   важно
помнить два обстоятельства:
1) Эти   команды   берут   адрес   строки   источника   из   регистров  SI  и  DS.   А   адрес   строки
приемника из регистров  ES  и  DH. Таким образом, для исполнения строковой команды
необходимо организовать сегментные регистра нужным образом.
2) Строковые   команды   используют   индексную   адресацию   с   автоматическим   поиском
смещения в регистрах  SI и DI
VI. Команды прерывания.
25

description:
Одной из важных частей функционирования компьютера является процессы прерывания.
Прерывание  –   процессы   остановки   работающей   в   данный   момент   программы   и   передача
управления, в какие – либо другие подпрограммы.
Прерывания могут возникать тремя путями :
1) аппаратные прерывания – возникают при изменении состоянии какоголибо устройства
2) Внутренние прерывания – возникают при выполнении некоторых операций процессора в
основном при возникновении ошибки деления на 0
3) Программное   прерывание   –   вызывается   выполнением   программы   для   обеспечения
собственной функциональности.
Векторы прерываний – это указатели на адреса памяти, в которой хранятся специальные
подпрограммы, которые называются обработчики прерываний.
Обработчики прерываний используются в программах в двух случаях:
1.Когда необходимо переопределить поведение системы при вызове, какого – либо прерывания.
Так пишутся резидентные программы и команды.
2.Когда необходимо воспользоваться обработчиком прерываний.
Второй случай называется вызовом системных функций MSDos.
Подпрограмма Bios выполняет множество задач распределяющих прерывания и их можно
вызвать с помощью команды int <номер прерывания>
Прерывания   могут   объединять   в   себе   несколько   подпрограмм,   какую   из   них   следует
вызвать, определяется значением регистра.
Например: прерывания 16H содержит подпрограмму с номером 02Н, которая при вызове
функции должна быть занесена в регистр АН. В качестве результата после работы функции в
регистр   АL  возвращается   флаг   состояния   клавиатуры   каждый   вид,   которого   определяет
соответствие клавиш и их состояние (1клавиша нажата, 0 – нет)
Таблица соответствия клавиш номерам бита проверки.
 Клавиша
 правый Shift
 левый Shift
Ctrl
Alt
Scroll Lock
Num Lock
Caps Lock
номер бита
1
2
3
4
5
6
7
Пример.
26

description:
Проверка состояния клавиши левый shift:
program KLAV;
uses crt;
function lshiftpressed:boolean;
var
status:byte;
begin
asm
mov AH,0.2h
int 16h
mov status,AL
end;
if (status and 2)>0 then
Lshiftpressed :=true
else Lshiftpressed:=false;
end;
begin
clrscr;
repeat
gotoxy(10,10);
if lshiftpressed then
write ('leviy SHIFT nagat')
else write ('ne nagat');
until keypressed;
end.
Тема №6 «Функции прерывания 21Н»
Прерывание  int  21Н предназначено для вызова функций  MSDos. Здесь насчитывается
около 90 различных функций, которые могут быть вызваны по прерываниям, при этом номер
прерывания функции помещаются в регистр АН. Эти функции разделяются на 2 группы:
1.функции ввода
27

description:
2.функции вывода
Каждой функции приводятся необходимые параметры, определяющие регистр, который
должен быть инициализирован перед вызовом прерывания 21Н.
Рассмотрим основные функции вывода и функции даты и времени.
Функции вывода
02Н  – это функция вывода символов на стандартный вывод и устанавливает курсор в первой
позиции. При этом в регистр DL должно быть занесено значение символа или код символа.
Примеры:
1)вывести  звездочку.
  Mov Ah,02h
  Mov Dl,’*’
  int 21h
2)Вывести на экране символ «рожица»,код которой 1
  Mov Ah,02h
  Mov Dl,1
  int 21h
05Н  вывод информации на печать. Эта функция посылает первый символ на принтер. При этом
Dos  ожидает,   когда   принтер   будет   готов   принять   символ.   Можно   прервать   ожидание
комбинацией   клавиш  Ctrl+Break.   Выходом   по   умолчанию   является   порт   принтера.   Для
немедленной   печати   необходимо   послать   символ   конца   строки(0dh)   или   символ   конца
страницы(0ch). Так как многие принтеры собирают символы для печати, во внешнем буфере и не
производят печать, пока буфер не заполнится или не встретится символ конца строки или конца
страницы.
Пример:
1)вывести на принтер заданную страницу, в которой последний символ $
Mov Ah,05h
Mov Dl,’$’
int 21h
Mov Dl,0ch
2)вывести на принтер заданную строку последней символ которой, «рожица» с кодом 1.
Mov Ah,05h
Mov Dh,1
28

description:
int 21h
Mov Dl,0dh
09Нвывод строки. Эта функция передает строку символов на стандартное устройство вывода.
При этом регистре Dx необходимо занести адрес строки. Строка должна заканчиваться знаком $
т.к. он будет являться управляющим символом для распознавания строки системой Dos.
Пример:
1)Код программы, в которой задана строка переменной str, следует вывести ее на экран.
Mov Ah,09h
Mov Dx,offset str
int 21h
2) Код программы, которая выводит заданную строку 3 раза.
Var
  str:=’203 gruppa$’;
asm
Mov Cx,3
@Lab:
Mov Ah,9
Mab Dx,offset str
int 21h
Loop @Lab
end;
readln;
end.
Функции даты и времени.
2АН – возвращает текущую системную дату, помещая год из регистра СХ, месяц – DH, день –
DL, день недели – AL.
Пример.
Код программы вывода текущей даты, устанавливаемой автоматически.
29

description:
Var year,month,dayofweek,day:integer;
Begin
asm
mov Ah,2ah
mov year,cx
mov month,dh
mov dayofweek,al
int 21h
end;
writeln(‘год’,year);
writeln(‘месяц’,month);
writeln(‘день’,day);
writeln(‘день недели’,dayofweek);
end.
2ВН – устанавливает  текущую дату, вводимую пользователем. Использует те же регистры что и
функция 2АН.
Пример:
Код программы вывода текущей даты, вводимую пользователем.
Var year,month,dayofweek,day:integer;
writeln(‘введите год’); read(year);
writeln(‘введите месяц’); read(month);
writeln(‘введите день’); read(day);
writeln(‘введите день недели’); read(dayofweek);
asm
mov ah,1bh
mov cx,year
mov dh,month
mov dl,day
mov al,dayofweek
end;
end.
30

description:
2СН  – возвращает   текущее системное время, помещает часы из регистра  CH, минуты из  CL,
секунды – DH, сотые доли из DL.
Пример:
Код программы вывода текущего времени, устанавливаемого автоматически.
Var  hour,minuts,seconds :integer;
asm
mov ah,2ch
mov hour,ch
mov minuts,cl
mov seconds,dh
int 21h
end;
writeln(‘час’, hour);
writeln(‘минуты’, minuts);
writeln(‘секунды’, seconds,);
end.
2DH  –   устанавливает   текущее   системное   время,   вводимые   пользователем   использует   те   же
регистры что и 2СН.
Пример:
Код программы вывода текущего времени, вводимого пользователем.
Var  hour,minuts,seconds :integer;
writeln(‘введите час’); read (hour);
writeln(‘введите минуты’); read(minuts);
writeln(‘введите секунды’); read(seconds);
asm
mov ah,2dh
mov ch,hour
mov cl,minutes
mov dh,seconds
31

description:
int 21h
end;
end.
Тема №7 «Метки»
Метки   в   ассемблере   определяются   также,     как   в   Паскале:   перед   оператором   записывается
идентификатор метки и двоеточие.  Как и в Паскале, метки в ассемблере должны описываться в
объявлении label того блока, который содержит оператор asm. Однако из этого правила есть
одно исключение. Это локальные метки. Локальные метки  это метки, которые начинаются с
символа @. Поскольку этот   символ не может быть частью идентификатора Паскаля,   такие
локальные   метки   автоматически   ограничиваются   использованием   их   в   операторах   asm.
Локальная метка известна только в определяющем ее операторе asm (то есть область  действия
локальной метки   начинается от ключевого слова asm и заканчивается ключевым словом end
оператора asm, который ее содержит).
             В отличие от обычной метки, локальную метку перед ее использованием не требуется
описывать в объявлении label.
             Идентификатор локальной метки состоит из символа @, за которым  следует одна или
более  букв (A..Z) цифр (0..9) символов  подчеркивания или  символов  @.    Как и все метки,
идентификатор завершается двоеточием.
Метка – это переход в нужное место в программе.
Любой команде Ассемблера может предшествовать одна или несколько меток. В ассемблере
используется два вида меток:
1. Глобальная – эта метка задаётся в Паскале после слова Label
2. Локальная   –   объявляются   не   посредственно   внутри   Ассемблера.   Такие   метки
обязательно начинаются со знака @ для того, чтобы Паскаль мог отличить локальную
метку от глобальной метки.
Пример: Код программы вывода заданной строки три раза.
Program primer;
Var str:=string;
Begin
    str:=’Hello, world!!!!$’;
32

description:
asm
    mov Cx,3
@ Lab:
    mov Ah,9
    mov Dx,offset str
    loop @ lab
         end;
         readln;
         end.
Тема №8 «Использование подпрограмм в Ассемблере»
Вызов подпрограммы осуществляется с помощью команды.
  CALL <имя подпрограммы >
<имя подпрограммы> proc
  команда ассемблера
<имя подпрограммы> endp
Так же может записываться в подпрограмме команда RET. RET – передает управление на
следующую после call строку.
                         Инструкция RET  генерирует код машинной   инструкции   возврата ближнего или
дальнего типа,  в зависимости от модели вызова текущей процедуры или функции. Например:

procedure NearProc; near;
             begin
               asm
                 ret      { генерируется ближний возврат }
               end;
             end;
            procedure FarProc; far
             begin
               asm
                 ret      { генерируется дальний возврат }
33

description:
end;
             end;

     С другой стороны,   инструкции RETN и RETF всегда   генерируют ближний или   дальний
возврат соответственно,  независимо от модели вызова текущей процедуры или функции.
Пример.
Вывести на экран строку, используя подпрограммы вывода на экран и ожидания нажатия
клавиши.
Var str1,str2:string;
begin
        Str1:=’нажмите любую клавишу’;
        Str2:=’вы нажали клавишу’;
asm
mov Dx,offset str1
call out_string
call wait_key
jmp lab
out_string proc
mov Ah,9
int 21h
ret
out_string endp
wait_key proc
mov Ah,10h
int 16h
ret
wait_key endp
end;
lab:
end.
34

description:
При вызове подпрограммы командой  CALL  процессор запоминает адрес следующей за
этой командой строки и помешает этот адрес в стек. При выполнении команды RET процессор
извлекает из стека адрес и переходит на соответствующую строку.
Тема №9 «Ассемблирование программ»
Общий принцип ассемблирования программ включает в себя два этапа:
1   этап   ассемблирование.   Программа   ассемблера   создает   объектный   файл   с
расширением   .obj.   Данай   файл   является   переходным   между   ассемблерным   файлом   с
расширением   .asm    и   файлом   типа.com  или   .exe.   В   случае   если   ассемблированный   листинг
слишком   большой,   то   программа   разбирает   на   несколько   частей.   В   большинстве   случает,
применяются директивы include.
Однако если файла присоединяемые указанной директивой большие и в основном не изменяемые
(готовые   процедуры)   то   постоянное   Ассемблирование   этих   процедур   может   занять   много
времени.   В   таком   случае   каждая   отдельно   взятая   часть   программы   ассемблируется   по
отдельности, при этом создается один или несколько объектных файлов, который не требует
постоянного ассемблирования, а только компоновки.
  2этап компоновка  если в процессе ассемблирования  не было выявлено ошибок, то
программа   ассемблер   создает   объектный   файл   за   тем   не   обходимо   воспользоваться
компоновщиком,   который   входит   в   комплект   программ   ассемблера.   Данная   процедура
выполняется гораздо быстрее, чем ассемблирование. Именно компоновщик создает готовый к
запуску файл  .exe или .com из объектного файла.
Тип   .com  не может превышать 64 Кбайт и используется только в  MSDos,  однако он очень
компактный и удобный для написания не больших программ и резидентных команд под MSDos.
В   большинстве   случаев,   если   программа   написана   на   чистом   ассемблере,   под  MSDos,   нет
необходимости создавать файл типа   .exe. Для создания стандартных программ типа . exe нет
необходимости указывать, какие – либо параметры при компоновке в отличие от типа . com
Компоновщик   так   же   проверяет,   нет   ли   ошибок   в   объектном   файле,   но   грамматических,   а
логических. Если ошибок не было обнаружено, то компоновщик создает машинный код, т.е.
программу типа . com или . exe, которую можно запускать на выполнение.
35

description:
Контрольные задания.
Контрольная работа №1
1 Вариант.
1. Дать определение понятию Ассемблер. Два этапа выполнения программ на Ассемблере.
2. Рассказать про регистры указатели.
3. Рассказать про целые числа.
4. Команды пересылки.
5. Дать определение понятию прерывания. Виды прерываний.
6. Составить программу на сложение 3 чисел: 12, 10, 40.
7. Даны команды, следует определить к какой группе они относятся:
 Add
 Movsb
 Loop

Sub
 out
 int
and
 call

 not
     8. Что такое цикл. Команда циклов.
JL
2 Вариант.
1. Использование Ассемблера в Паскале.
2. Рассказать про регистры данных.
3. Рассказать про символы.
4. Арифметические команды.
5. Дать определение понятию метка. 2 вида меток.
6. Составить программу, которая должна поместить число 10 в стек и произвести замену
данного числа на число 20 и извлечь его из стека.
7. Указать где идентификатор, а где число:

0CH

13H
 A5H

SED
 CX
 101B
 A4
 2DH
     8. Перечислить группы команд Ассемблера.
37

description:
3 Вариант.
1. На какие группы можно разделить команды Ассемблера  относительно команд
процессора.
2. Рассказать про сегментные регистры.
3. Рассказать про идентификаторы.
4. Битовые команды.
5. Перечислить виды адресации.
6. Составить программу вычитания 3 чисел: 40, 35, 2, используя регистр Ах и вывести
результат в переменную Х.
7.Даны регистры, следует определить к какой группе они относятся:
 AL
 CF
 BX
 DI
             CS
 DF
 BP
CH
 IP
 SS
8. Дать определение понятию регистр.
4 Вариант.
1. Назовите программы, которые пишут на Ассемблере.
2. Рассказать про регистры флагов.
3. Рассказать про предложения.
4. Строковые команды.
5. Дать определение понятием условный и безусловный переходы.
6. Составить программу умножения 3 чисел: 20, 10, 5, используя регистр Ах и вывести
результат в переменную У.
7. Указать где служебное имя, а где нет:

2D5
 DIV
 BX
 Lab
 D
 S.500
 ADD
 A5
38

description:
8. Назвать 2 случая использования прерываний в программе.
Контрольная работа №2
Вариант I
1. Использование подпрограмм в ассемблере.
2. Функция 02h.
3. Различие между Паскалем и Ассемблером.
4. Составить программу вывода на экран символа «!» 2000 раз.
1. Составить программу вывода времени на экран, которое устанавливается автоматически.
2. Определите ошибки в написанной программе. Напишите программу правильно.
program prim;
var str: string;
begin
str:,luchaya gruppa tehnikuma!!!!!';
asm
mov Ah,02h
mov dx, str
int21h
end;
readln;
end.
39

description:
Вариант II
1. Дать определение понятию стек. Команды работы со стеком.
2. Функция 09h.
3. Дать определение понятию ассемблирование программ. Назвать два этапа
ассемблирования.
4. Составить программу вывода на экран следующей строки «Assembler».
5. Составить программу вывода даты на экран, которая устанавливается
автоматически.
7. Определите результат данной программы,
program KLAV;
uses crt;
function NLpressed:boolean;
var
status:byte;
begin
asm
mov AH,02h
int 16h
mov status,AL
end;
if (status and 6)>0 then NLpressed =true
else NLpressed:=false;
end;
begin clrscr;
repeat
gotoxy(10,10);
if NLpressed then
write (‘NumLock nagat)
 else write ('ne nagat');
until keypressed;
end.
40

description:
Вариант III
1. Дать определение понятию функций прерывания 21h. Как ее вызвать.
2. Функция вывода времени.
3. Рассказать про первый этап ассемблирования программ.
4. Составить программу вывода на экран символа «$».
1. Составить программу вывода даты на экран, которая вводится
вручную.
2. Определите ошибки в написанной программе. Напишите программу правильно.
program prim;
var stnbyte;
begin
str:='PRIVET!$';
asm
mov dx,3
@lab:
mov ah,9
mov dx, offset str
int 16h
loop @lab
end;
readln;
end.
41

description:
Вариант IV
1. Функция 05h.
2. Функция вывода даты.
3. Описать второй этап ассемблирования программ.
4. Составить программу вывода на экран следующей строки «Pascal» 10 раз.
5. Составить программу вывода времени на экран, которое вводится вручную пользователем.
6. Определите результат данной программы. Назовите прерывания и  функцию, с
помощью которых выводится результат программы.
program prim;
label nextface;
begin
asm
mov ax, 0b800h
mov es, ax
mov di, '0'
mov al, 1
mov ah, 100
mov ex, 10
nextface:
mov es:[di], ax
add  di,2
loop nextface
mov ah, 10h
int 16h
end;
end.
42

description:
Лабораторная работа №1. по теме «Работа с командами Ассемблера»
Практическая часть.
Цель: освоить работу команд Ассемблера.
Варианты заданий.
1. Составить программу сложения 3 – х чисел: 45, 89, 110. Результат вывести в переменную
Х.
2. Составить программу вычитания 3 – х чисел: 120, 30, 65. Результат вывести в переменную
У.
3. Составить программу умножения 2 – х чисел: 40, 35. Результат вывести в переменную Z.
4. Составить программу деления числа 500 на число 100. Результат вывести в переменную
В.
5. Составить программу замены числа 30 на число 50. Замену осуществлять через стек.
6. Составить программу сложения  двух двоичных чисел 00111010 и 100001111, используя
регистр AL. Результат  вывести в переменную А.
7. Составить программу   двух двоичных чисел  111011 и 1111, используя    регистр  AL.
Результат  вывести в переменную В.
8. Составить   программу   отрицания   двоичных   чисел   1011011   и   101101111,   используя
регистр AL. Результат  вывести в переменную С и В соответственно.
9. Составить программу помещение числа 30 в стек и извлечение его из стека в переменную
А.
10. Составить программу сравнение чисел 20 и 67, и выбрать из них наибольшее. Данные
числа хранятся в регистрах Ах и Вх соответственно. Найденное наибольшее значение
поместить в регистр  Dx.
11. Составить программу проверки подключения принтера.
12. Составить программу сравнение чисел 10 и 6, и выбрать из них наименьшее. Данные
числа хранятся в регистрах Ах и Вх соответственно. Найденное наименьшее значение
поместить в регистр  Dx.
43

description:
Лабораторная работа №2. по теме «Использование функций прерывания 21H в
реализации задач»
Цель: освоить работу основных функций прерывания 21H  при реализации задач вывода строк и
символов.
Варианты заданий.
1. Составить программу вывода на экран строки «Privet Admin» через переменную st.
2. Составить программу вывода на экран строки «Turbo Pascal» 15 раз через переменную
stroka
3. Составить программу вывода на экран символа  ^  с помощью прерывания 21H.
 Составить программу вывода на экран символа  ? 20 раз  с помощью прерывания 21H.
4.
5. Составить программу вывода на экран строки вводимую пользователем.
6. Составить программу вывода на экран строки 7 раз, строка должна вводится
пользователем.
7. Составить программу вывода на экран символа с кодом единица с помощью прерывания
21H.
8.
 Составить программу вывода на экран символа  с кодом ! 10 раз  с помощью прерывания
21H.
9. Составить программу вывода на экран любой строки через переменную str.
10. Составить программу вывода на экран любой строки 10 раз через переменную str.
44

description:
Лабораторная работа №3. по теме «Использование меток и подпрограмм»
Цель: Освоить работу меток и подпрограмм, а также функций вывода даты и времени при
реализации задач Ассемблера.
Варианты заданий.
1. Составить программу вывода текущего времени, установленного автоматически. Часы
выводятся в переменную х, минуты – у, секунды – z.
2. Составить программу вывода текущего времени, установленного пользователем вручную.
Часы выводятся в переменную chas, минуты – minut, секунды – sec.
3. Составить программу вывода текущей даты, установленной автоматически. Год
выводится в переменную х, месяц – у, день – z.
4. Составить программу вывода текущей даты, установленной пользователем вручную. Год
выводится в переменную god, месяц – mes, день –  den.
5. Составить программу проверки состояния нажатия клавиши ALT.
6. Составить программу вывода строки, используя подпрограммы вывод на экран и
ожидания  нажатия клавиши.
7. Составить программу, выводящую на экран сообщения, ждущее нажатие любой клавиши
и показывает код этой клавиши.
8. Составить программу вывода строки «Hello, LiDAMT» через переменную str c
использование локальной метки Lab.
45

description:
Самостоятельная работа студента.
«Решение задач по образцу. Решение вариантных задач»
1. Составить программу сложения 2 – х чисел: 20, 9. Результат вывести в переменную F.
2. Составить программу вычитания 2 – х чисел: 30, 15. Результат вывести в переменную D.
3. Составить программу умножения 2 – х чисел: 23, 5. Результат вывести в переменную X.
4. Составить программу деления числа 100 на число 10. Результат вывести в переменную А.
5. Составить программу замены числа 3 на число 5. Замену осуществлять через стек.
6. Составить программу вывода на экран строки «Hello, Student» через переменную str.
7. Составить программу вывода на экран строки «Hello, Student» 15 раз через переменную
str.
8. Составить программу вывода на экран символа  *  с помощью прерывания 21H.
9.
 Составить программу вывода на экран символа  *  20 раз  с помощью прерывания 21H.
10. Составить программу вывода на экран строки 3 раза, строка должна вводится
пользователем.
11. Составить программу вывода текущего времени, установленного автоматически. Часы
выводятся в переменную c, минуты – m, секунды – sec.
13. Составить программу вывода текущей даты, установленной автоматически. Год
выводится в переменную g, месяц – m, день – d.
14. Составить программу проверки состояния нажатия клавиши NumLock.
15. Составить   программу   сравнение   чисел   100,   50   и   60,   и   выбрать   из   них   наименьшее.
Данные числа хранятся в регистрах Ах, Вх, Cx соответственно. Найденное наименьшее
значение поместить в регистр  Dx.
46

description:
Список используемой литературы.
1. Юрагов   Е.   А.   Системное   программирование.   Лабораторный   практикум:   Пособие   для
СПО, Издательство: МГОУ, 2011.
2.
 Калашников О.А. Ассемблер  это просто. Учимся программировать – М.: БХВ
Петербург, 2011.
3. Семакин И.Г. Основы алгоритмизации и программирования. Практикум: учеб. пособие
для студ. учреждений сред. проф. образования – М.: Издательский центр «Академия»,
2013.
47

intro:
Методическое пособие  по теме «Использование Ассемблера в Паскале при решении задач» предназначено для теоретической и практической, а также самостоятельной подготовки студентов по специальности: 09.02.03 «Программирование в компьютерных системах», 09.02.05 «прикладная информатика (по отраслям)» среднего профессионального образования.
Методическое пособие  формирует базовые знания:
-  основные понятия языка Ассемблер;
- команды и операторы языка Ассемблера;

title: Методическое пособие на тему "Использование  Ассемблера при решении задач"