Страница 2 из 3

Re: День программиста

Добавлено: 14 сен 2013, 22:02
aftaev
на клавиатуре ноль спичкой зажать, пока вся память не заполнится нулями :)

Re: День программиста

Добавлено: 14 сен 2013, 22:05
aftaev
UAVpilot, это напомнило мне случай когда друг прибегает и говорит: нам препод задал задачу если решим можно на лекции не ходить.
Задача примерно такая: есть 10шт монет по 5руб, 15шт по 20руб и тд... Нужно взять сколько то монет чтобы получилась сумма.
Написал в Exel перебор всех вариантов и в итоге получился ответ - решения задача не имеет :)

Re: День программиста

Добавлено: 14 сен 2013, 22:40
PKM
В этот день пьяные программисты будут купаться в фортранах и бить морды прохожим с вопросом "а ты на каком языке пишешь?"

Re: День программиста

Добавлено: 15 сен 2013, 08:13
Тима
UAVpilot писал(а):Я сам начинал со всяких Электроника-60 и т.п.
Тоже начиналось с какого-то "Электроника", но цифры не помню. Записывали программы(игры) с 5и дюймовых дисков или с кассетного магнитофона и пытались работать.
Учились писать на Бейсике... Да было время...
aftaev писал(а):на клавиатуре ноль спичкой зажать, пока вся память не заполнится нулями
И такое делали, в смысле не заполняли память, а нужно было удерживать комбинацию кнопок пока что-то загружалось. Мы либо ложили на кнопки что-либо, либо клинили кнопки чем-либо...

Re: День программиста

Добавлено: 15 сен 2013, 08:32
2cme
Тима писал(а):либо клинили кнопки чем-либо...
Для этого отлично подходит обычная отвертка.

aftatv, это не решение, т.к. не выполнено одно условие задачи:
UAVpilot писал(а):Программа должна находится в той-же самой памяти.
;)

Re: День программиста

Добавлено: 15 сен 2013, 09:27
Serg
aftaev писал(а):Написал в Exel перебор всех вариантов и в итоге получился ответ - решения задача не имеет :)
Данная задача решение имеет. И несколько студентов это решение нашли.
Даже могу подсказку дать: вся программа помещается в одну ячейку памяти. :)

Re: День программиста

Добавлено: 15 сен 2013, 10:05
Тима
2cme писал(а):Для этого отлично подходит обычная отвертка.
Ну, в то время отвертка в инвентарь школьника не входил, поэтому приходилось пользоваться подручными средствами!

Re: День программиста

Добавлено: 15 сен 2013, 21:59
Сергей Саныч
Уточнение: память именно нулями нужно прописать? Или сойдет какое-нибудь другое значение, вроде 014747?

Re: День программиста

Добавлено: 15 сен 2013, 22:03
Serg
Именно нулями.

Re: День программиста

Добавлено: 16 сен 2013, 04:04
michael-yurov
Я сначала про кнопку Reset подумал, но, наверное, там все-равно какой-то загрузчик прописывается.
С архитектурой не знаком, так что ответить на вопрос даже не пытаюсь.

Re: День программиста

Добавлено: 16 сен 2013, 06:38
Serg
Reset память не обнуляет ни на одной из известных мне архитекрур.
Для хорошего программера вот этого в принципе вполне достаточно: http://pages.cpsc.ucalgary.ca/~dsb/PDP11/InsSet.html :hehehe:

Re: День программиста

Добавлено: 16 сен 2013, 08:37
2cme
UAVpilot писал(а):Reset память не обнуляет ни на одной из известных мне архитекрур.
Для хорошего программера вот этого в принципе вполне достаточно: http://pages.cpsc.ucalgary.ca/~dsb/PDP11/InsSet.html :hehehe:
А плюшки будут (студентам насколько я понял был автомат под дисциплине)?

Re: День программиста

Добавлено: 16 сен 2013, 09:18
Сергей Саныч
Фишку про MOV -(PC),-(PC) знаю.
Но чтоб нулями, всю память, включая саму себя, да еще одной командой?
То что потом само остановится, понятно, HALT = 000000

Re: День программиста

Добавлено: 16 сен 2013, 10:41
Serg
Ну осталось совсем немножко додумать... :)

Re: День программиста

Добавлено: 16 сен 2013, 12:44
Nick
Serg-tmn писал(а):Фишку про MOV -(PC),-(PC) знаю.
Но чтоб нулями, всю память, включая саму себя, да еще одной командой?
Так наверное можно написать большую программу, которая заполнит первую ячейку нулями, а в последней ячейке написать индукцию c mov.....

Re: День программиста

Добавлено: 16 сен 2013, 13:13
Сергей Саныч
Nick писал(а):
Serg-tmn писал(а):Фишку про MOV -(PC),-(PC) знаю.
Но чтоб нулями, всю память, включая саму себя, да еще одной командой?
Так наверное можно написать большую программу, которая заполнит первую ячейку нулями, а в последней ячейке написать индукцию c mov.....
Что такое "индукция" в данном контексте?
Кроме того, UAVpilot говорит, что вся программа занимает 1 ячейку памяти (16 бит).

Re: День программиста

Добавлено: 16 сен 2013, 14:22
Serg
Ну чё, говорить ответ или ещё покумекаете? :)

Re: День программиста

Добавлено: 16 сен 2013, 14:32
Nick
Две команды в 16 бит поместятся?
Если сделать так, пишем в первую ячейку 00000, во вторую код типо передвинуть себя и предыдущую ячейку в следующую ячейку.

Re: День программиста

Добавлено: 16 сен 2013, 14:38
Serg
Nick писал(а):Две команды в 16 бит поместятся?
Конечно нет. Все инструкции 16-битные.

Re: День программиста

Добавлено: 16 сен 2013, 18:53
Ворон226
Для решения этой задачи нужно почитать Ассемблер ;)