Учится еще раз учится!

Тема в разделе "WASM.BEGINNERS", создана пользователем jijidesign, 22 ноя 2010.

  1. _sheva740

    _sheva740 New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2005
    Сообщения:
    1.539
    Адрес:
    Poland
    Y_Mur
    Скорее всего действительно так.
    Наверное можно нарисовать такую пирамиду
    для программиста.

    Уровень 3 --------------Мировосприятие?
    Уровень 2-------------Математика, физика, ...
    Уровень 1--------Delphi, C, php, perl, иже с ними
    Основание ----Низкоуровневое программирование.

    Можно идти сверху, а можно снизу.
     
  2. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    _sheva740
    Ничего подобного, на вершине лисп.
     
  3. prokt

    prokt New Member

    Публикаций:
    0
    Регистрация:
    24 ноя 2010
    Сообщения:
    1
    Что-то Абеля не видно. На мой взгляд это всё потом, иначе до ассемблера не доберётесь
    Начните вот с этого http://wasm.ru/publist.php?list=22 Когда этот материал ещё в виде рассылки выходил, я не переставал удивляться, на сколько интересно и доступно изложено. Параллельно Абеля можно скачать
     
  4. jijidesign

    jijidesign Alexsandr

    Публикаций:
    0
    Регистрация:
    18 ноя 2010
    Сообщения:
    26
    Будем изучать. Спасибо!
     
  5. PSR1257

    PSR1257 New Member

    Публикаций:
    0
    Регистрация:
    30 ноя 2008
    Сообщения:
    933
    jijidesign

    Вы собираетесь слишком много читать и слишком мало практиковаться.

    Рассмотрим две модели личности - исследователь и ... не знаю как назвать точно - тот, кто предпочитает сначала "прочесть как надо делать правильно чтобы не дай Бог не изобрести велосипед". Пусть будет "антивелосипедист"

    В любом случае есть закон сохранения времени (усилий) и вы не сможете за то же самое время полноценно изучить проблему и как следует ее обдумать и перебрать все возможные варианты уже известных решений.

    Теперь представим себе что два метода пытаются решить какую-то новую (для индивида) задачу. Исследователь, не обремененный (в данном случае) ссылками на готовые решения начнет пытаться решить задачу сам, Антивелосипедист разумеется полезет в книги, статьи, может быть даже запостит реквест на каком-то форуме.

    В чем принципиальная разница? По общепринятому (и неправильному) мнению разница в том, что Антивелосипедист начнет с того, что быстро сузит диапазон поиска благодаря чужим наработкам.

    Однако разница совсем не в этом. Разница в том, что прежде чем загружать мозг рекомендациями его нужно сначала "вспахать" попытками практики. Задачу нужно сначала почуствовать, попробовать самому.

    Это примерно как следовать указаниям по тренировке для мастеров спорта если даже не пробовал одолеть III спортивный разряд.
     
  6. _sheva740

    _sheva740 New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2005
    Сообщения:
    1.539
    Адрес:
    Poland
    Наш профессор говаривал - "... а с этой мыслью нужно переспать ночку другую."
    Мы все ржали как кони, а он учил нас искать и находить в этом удовольствие.
     
  7. SII

    SII Воин против дзена

    Публикаций:
    0
    Регистрация:
    31 окт 2007
    Сообщения:
    1.483
    Адрес:
    Подмосковье
    На самом деле теория и практика должны идти вместе. Иногда опережает одно, иногда -- другое, но нельзя достичь настоящих высот (или глубин), придерживась лишь одного направления.
     
  8. jijidesign

    jijidesign Alexsandr

    Публикаций:
    0
    Регистрация:
    18 ноя 2010
    Сообщения:
    26
    Я же не говорил что буду читать всю сразу же постепенно, просто это я подобрал книги которые думаю пригодятся в будущем. Ладно все, ушел с форума практиковаться...болею... )
     
  9. Vilco

    Vilco Vitaly

    Публикаций:
    0
    Регистрация:
    5 мар 2007
    Сообщения:
    190
    Адрес:
    Nsk, Russia
    Без знания теории, в частности математической её части, ничего качественно нового предложить не удастся (хотя бывают, конечно, исключения - одаренные люди, затратившие колоссальное количество времени). Другое дело что почти всегда это бывает и не нужно; для решения типовых задач и различных их комбинаций таковых достаточно практики и копирования с других источников. Сами решайте что вам нужно.
    Список книг очень недурен, но, боюсь, что если вы его возьметесь изучать, то
     
  10. jijidesign

    jijidesign Alexsandr

    Публикаций:
    0
    Регистрация:
    18 ноя 2010
    Сообщения:
    26
    Vilco
    Я для себя выбрал уже, что буду стараться придумывать более что то новое.
    Так то посоветуете насчет математической части?
     
  11. Vilco

    Vilco Vitaly

    Публикаций:
    0
    Регистрация:
    5 мар 2007
    Сообщения:
    190
    Адрес:
    Nsk, Russia
    Я не большой знаток по этой части (в смысле книжек), но ваш список почти годится (как правило, лучше смотреть пару источников) на кандидатский минимум по соответствующим специальностям (дискретная математика и интформатика, программирования). Но если начинать с нуля - это все тяжеловато.
    Логично справиться о вашем нынешнем уровне познаний - каковы?
    И почему именно функциональный анализ?
    Для старта я бы предложил что-нибудь по математической логике (к сожалению по ней книг хороших на руках вообще не имел, только лекции; а вот для практической части есть замечательный задачник Лавров, Максимова), это для общего ознакомления с типичными математическими конструкциями и взаимосвязями между ними - сюда же можно отнести теорию групп (если вам это будет интересно конечно, но это опционально).
    Далее, в вашем списке не нашел ничего по тому, что называется "высшая алгебра". На мой взгляд - одно из самых полезных подразделений математики для программиста. Тут могу посоветовать классику - книги Ван Дер Вардена; Кострикина; Куроша.
    Ещё одна вещь по которой полезно хотя бы пробежаться глазами - теория алгоритмов. В любом случае полезно, хотя бы для общего развития, знать что такое машины Тьюринга, вычислимость, сложности алгоритмов и понятие алгоритма как такового (ну ещё много всякого). Тут могу поделиться лекциями, если хотите конечно. По-моему написано весьма неплохо.
    На этом все. Дальше нужно определиться с направлением дальнейших исследований. Если это будут какие-то моделирования - разумно будет изучить литературу по ФА (достаточно будет классического учебника Колмогорова или Треногина, тут уж сами выберете) и по численным методам. Если это будут графические движки - математический анализ и дифференциальная геометрия (а часто и простой евклидовой хватает). Если низкоуровневое программирование - подойдут васмовские статьи. Если ОС - книги Таненбаума, а по проектировке элементарых ОС была замечательная серия статей (возможно, немного устаревшая, но..) - http://sysbin.com/docs_ll.html.
    Параллельно можно изучать Кнута - формализм изложения, конечно, немного пугает, но после ознакомления с вышкой и логикой - все кажется довольно логичным. Некоторые читают и без математической подготовки, но такие люди "тащат" за счет опыта.
    Тут в общем-то следует понимать что изучить все и сразу не получится, поскольку объемы информации в наше время даже по отдельным областям просто огромны и "быть физиком, математиком и астрономом одновременно" уже физически человек неспособен. С другой стороны, не лишним будет ознакомится с основами всех отраслей, потому как чтобы выбрать - нужно сначала попробовать.
     
  12. jijidesign

    jijidesign Alexsandr

    Публикаций:
    0
    Регистрация:
    18 ноя 2010
    Сообщения:
    26
    Если поделитесь лекциями очень хорошо будет ;)
    Интересуют такие темы как разработка ОС, низкоуровненовое программирование и разработка компиляторов.
    Спасибо за развернутый ответ, очень приятно.
    Мои знания таковы - курс дискретной математики, элементы высшей математики. Больше всего нравится дискретная математика. Хочу углубится, да и старое встрехнуть как в ДМ и высшей математики.

    Учусь в техникуме, закончил 11 классов, но не получилось мне, тогда поступить в ВТУЗ, конечно не из-за плохих баллов ;) Сейчас в техникуме проходим "Численые и математические методы", по программированию - Delphi, и прощу, не смеяться - FoxPro.

    Я не хочу быть очередным "клепальщиком дешевых бд" в своем городе, которых вполне хватает. Тяга к знаниям и терпение есть. Сейчас например, читаю статью с васм'а "Введение в машинный код" и потом прочитаю первую главу у Абеля про представление данных в компьютере, чтоб все утреслось в голове. Компьютерную арифметику я тоже изучал в техникуме, сейчас, читаю чтоб все было понятно и осозналось более лучше(тогда я этим не интересовался). Да и считаю, что лучше иметь навыки по базису чем по каким-то новым технологиям.

    Вспомнилась фраза :) "Страуструп тут сказал, что его расстраивает, что появились программисты, которые не знают, что такое байт."
    Хочется иметь фундументальные знания по архитектуре, данных, структурах, алгоритмах.
     
  13. Vilco

    Vilco Vitaly

    Публикаций:
    0
    Регистрация:
    5 мар 2007
    Сообщения:
    190
    Адрес:
    Nsk, Russia
    Книжки Ахо и Кнута очень даже ничего.
    Ну тогда, я думаю, неплохо было бы ознакомится с циклом http://wasm.ru/publist.php?list=24 и http://sysbin.com/docs_ll.html
    По теории низкоуровнего программирования можно посмотреть книжку Ахо ("Построение и анализ вычислительных алгоритмов"), там изложены такие модели как машины тьюринга, расп- и рам- машины. По практике - какую-нибудь книжку по ассемблеру +воображение для сооружения тривиальных и не совсем задач самому себе. Посмотрите, была где-то тема на форуме, где обсуждали сие множество.
    По компиляторам на васме тоже что-то есть, но если честно, не открывал даже.
    Давайте почту в пм, отправлю лекции, авось пригодятся.
     
  14. jijidesign

    jijidesign Alexsandr

    Публикаций:
    0
    Регистрация:
    18 ноя 2010
    Сообщения:
    26
    Отправил почту в ЛС.
     
  15. jijidesign

    jijidesign Alexsandr

    Публикаций:
    0
    Регистрация:
    18 ноя 2010
    Сообщения:
    26
    Хочется спросить, читаю все статью "Введение в машинный код" там есть из 10h - 1h=Fh
    Я вот понять не могу как это получили? То есть это вычитали из "0" и получилось fh? Дальше я понимаю как работает, из 0Fh - 01h=0Eh и т.д. а как из 10h? 20h? Я понимаю что такое, это но что то не догоняю этот момент. Просто хочу во всем разобраться, спасибо.
     
  16. _sheva740

    _sheva740 New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2005
    Сообщения:
    1.539
    Адрес:
    Poland
    jijidesign
    Нужно просто подождать до понедельника.
     
  17. tester3000

    tester3000 New Member

    Публикаций:
    0
    Регистрация:
    20 окт 2006
    Сообщения:
    140
  18. SII

    SII Воин против дзена

    Публикаций:
    0
    Регистрация:
    31 окт 2007
    Сообщения:
    1.483
    Адрес:
    Подмосковье
    jijidesign
    А как при вычитании из 10 десятичного получается 9? Точно так же и в любой другой позиционной системе счисления.
     
  19. jijidesign

    jijidesign Alexsandr

    Публикаций:
    0
    Регистрация:
    18 ноя 2010
    Сообщения:
    26
    Да я сам уже разобрался, спасибо. Закончу со статьей, возьмусь за "Абеля".
     
  20. jijidesign

    jijidesign Alexsandr

    Публикаций:
    0
    Регистрация:
    18 ноя 2010
    Сообщения:
    26
    Читая статью я встретился с проблемой, с выполнением кода.
    Код (Text):
    1. -a
    2. :0100 MOV AH,00   ;устанавливаем графический режим
    3. :0102 MOV AL,04
    4. :0104 INT 10
    5. :0106 MOV CX,0064 ;координаты Первой Точки
    6. :0109 MOV DX,0064
    7. :010C MOV AH,0C   ;рисуем точку!
    8. :010E MOV AL,1B
    9. :0110 INT 10
    10. :0112 MOV AH,00   ;ждем нажатия на клавишу
    11. :0114 INT 16
    12. :0116 CMP AH,4B   ;а не нажат ли у нас Left?
    13. :0119 JE 012A     ;если да - то "прыг"!
    14.                   ;если нет - то следующая строчка
    15. :011B CMP AH,4D   ;а не нажат ли у нас Right?
    16. :011E JE 012D
    17. :0120 CMP AH,48   ;а не нажат ли у нас Up?
    18. :0123 JE 0130
    19. :0125 CMP AH,50   ;а не нажат ли у нас Down?
    20. :0128 JE 0133
    21. :012A DEC CX      ;задаем новые координаты, в зависимости
    22. :012B JMP 010C    ;от нажатой клавиши - и скок в начало!
    23. :012D INC CX
    24. :012E JMP 010C
    25. :0130 DEC DX
    26. :0131 JMP 010C
    27. :0133 INC DX
    28. :0134 JMP 010C
    Нет, нет я его понимаю. Но когда я запускаю исполняемый файл, то просто открывается консоль переходит в графический режим и выходит, я даже не успел нечего посмотреть. Либо я не внимательно читал, либо что то другое. Может где то не хватает поставить команды, которая бы ждала. хм, или тут не хватает прерывания int 20? Вроде понял в чем суть..