?

Log in

No account? Create an account
 
 
03 Сентябрь 2011 @ 10:11
Мехмат, день 1  
И так, вчера (ну, уже позавчера) у нас было первое занятие на вечернем
мехмате. Вернее первые два :о) Но оба - "Языки и технологии
программирования".

Первым же делом преподователь сказал, что
хочет понять с какой аудиторией работает. И спросил - "Кто из вас
работает программистом? Поднимите руки". Лес рук, ога.
Ни одного человека. "Хорошо, поднимите руки те, кто в своей жизни
написал хоть одну программу... Длиннее 100 строк." Половина, может две
трети - подняли руку. Всёж больше половины студентов - технари, физики,
инженеры и иже с ними. Ну я тоже, конешн, поднял - уж 100 строк то я
писал, и не раз :о)))

Далее схема урока была такая:
- Сначала
на рассказали как и что вообще обрабатывает компутер. Показали код в
виде машинного кода. Потом - его же на ассемблере. Потом его же на С :о)
Минут 10.
- Потом нам рассказали общую классификацию языков
программирования. А так же - как выбирать язык программирования для
изучения... ещё минут 10-15.
- Потом нам рассказали, что такое
Ассемблер и с чем его едят. В двух словах. Потом раздали листы с
основными командами Zilog Z80, которые нам могут понадобиться, и
быстренько пробежали по ним на уровне "это добавляет, это сравнивает,
это загружает и т.п.". Со стороны, возможно, выглядит нормально... Но
это объяснение продлилось тоже минут 15-20. И кроме меня и ещё человек
эдак 3-4-5 - вообще никто ничего не понял :о)

И далее - сразу задачки, 4 штуки:
1) В памяти в ячейках 200-210 содержатся некие цифры. Нужно их перенести в ячейки 300-310 в обратном порядке.
2) Нужно найти, начиная с 1000-ой ячейки - номер ячейки с 4-ым по счёту нулём.
3)
В ячейках 100-104 лежат пять цифр. Нужно найти в ячейках, начиная с
1000-ой - после повторов каждой цифры из 101-104 по 4 раза - номер
ячейки с последней цифрой встреченной 4 разад.

Первые три задачи я
и ещё трое с горем пополам таки решили. С очень большим горем и очень
пополам :о) Хотя один чел даже заморачивался - пытался оптимизацию
сделать :о))

Ну и на последок - четвёртая задача:
4) Есть
массив данных c 1000 по 1999 ячейки (ну т.е. тысяча ячеек). Надо их
отсортировать пузырьковым методом. Никто не справился :о))) Дали на дом.


Вопщем - вынос мозга целиком и полностью. Людям, относительно
далёким от программирования - сходу давать ассемблер - с минимальными
объяснениями. Причем настолько минимальными, что бывало - напиши код,
подхожу к преподователю, показываю, а он говорит - "CP только с А
сравнивает", или "В стек толшько двухбайтые кладутся" и т.п. И это не
потому что я забыл или прозевал, а потому, что он не говорил этого
заранее :о)))

Все, кроме меня нас ~пятерых не то что не смогли
написать ни одной программы - они не смогли даже понять "как задается
переменная?" :о)

И я вот вчера вечером таки сделал, не без помощи
Димана (помощи на уровне преподователя, а не писал вместо меня и т.п.).
И вот что у меня вышло (даже проверил на эмулятре Z80):

LD BC, 1000
m3: PUSH BC
LD HL, 100h
POP DE
PUSH DE

m2: LD A, (HL)
INC HL
LD B, (HL)
CP B
JR C, m1
LD (HL), A
DEC HL
LD (HL), B
INC HL
m1: DEC DE

LD A, 0
CP E
JR NZ, m2
CP D
JR NZ, m2

POP BC
DEC BC

CP C
JR NZ, m3
CP B
JR NZ, m3

loop: JR loop

Самое сложное было - справиться с нехваткой переменных( Куча лишних действий...

Такая вот веселуха :о) Моя довольный :о)
Про первый матан - чуть пожже расскажу :о)
 
 
 
Аняanna_gurskaya on Сентябрь, 3, 2011 06:34 (UTC)
Удачи в учебе) А я вчера напросилась слушать курсы лекций по культуре Японии и по литературе Японии. Преподаватели шикарные, а я довольная как слон)
Соколов Игорьrakudajin on Сентябрь, 3, 2011 08:19 (UTC)
Спасибо :о)

Культура и литература Японии - хороший выбор ;о)
Аняanna_gurskaya on Сентябрь, 3, 2011 17:25 (UTC)
Да, мне тоже нравится безумно!
Рыжий Снегautumnchild_ on Сентябрь, 3, 2011 15:30 (UTC)
Здорово! А кто читает?
Аняanna_gurskaya on Сентябрь, 3, 2011 17:24 (UTC)

Степан Родин

читает про культуру, а Мария Торопыгина, которую, думаю, представлять не надо - литературу)
Рыжий Снегautumnchild_ on Сентябрь, 3, 2011 18:30 (UTC)
Ну, Степана я тоже немного по конференциям знаю. Мир японистов тесен:)
Дронов Даниилdronov_d on Сентябрь, 3, 2011 08:13 (UTC)
Ты крут! Половину слов я вообще не понял :)
Соколов Игорьrakudajin on Сентябрь, 3, 2011 08:20 (UTC)
пасип :о) но это нормально что не понял)) у меня друг, который активно на асм-е программирует - тоже ничего не понял, мне ему пришлось обильно объяснять что есть что, прежде чем он смог говорить что у меня может быть не так :о)
酒人mospehraict on Сентябрь, 5, 2011 00:48 (UTC)
Ну Z80 понятно мало кто знает)
Соколов Игорьrakudajin on Сентябрь, 5, 2011 05:48 (UTC)
мне кажется многие.. из тех кому за 40)))