Форум: "Прочее";
Текущий архив: 2007.05.27;
Скачать: [xml.tar.bz2];
Внизосновы Найти похожие ветки
← →
Сом (2007-05-02 12:16) [0]Посоветуйте книгу про основы компьютерного мира. Интересует: работа ос, программ на уровне "нулей и единиц", исполнение программ после компилирования и т.д., т.е для подготовки к обучению программированию. Стал читать Руссиновича ("Внутренне устройство winxp"), но многое там мне показалось не понятным, и немного не в тему.
Спасибо.
← →
ferr © (2007-05-02 12:21) [1]Простая(почти детская) книга Петцольда "Код". Про ось надо сначала Таненбаума хоть прочесть..
← →
Sergey Masloff (2007-05-02 12:22) [2]Петцольд это совсем детская. Про Танненбаума согласен.
← →
Piter © (2007-05-02 12:38) [3]А нафиг тебе это, Сом. Нет, конечно, сейчас многие скажут - а так понятнее, концепция и все такое. Но в целом современное высокоуровневое программирование ушло настолько далеко (а лет через несколько - уйдет еще дальше), что уже пофигу в какой ОС будет исполняться твой код, на каком железе и остальные характеристики, и как там бегают битики и байтики - никому не интересно. Ну если так в общих чертах иерархию представлять.
Если только не будешь заниматься низкоуровневым.
← →
Сом (2007-05-02 12:40) [4]
> Piter © (02.05.07 12:38) [3]
> А нафиг тебе это, Сом. Нет, конечно, сейчас многие скажут
> - а так понятнее, концепция и все такое. Но в целом современное
> высокоуровневое программирование ушло настолько далеко (а
> лет через несколько - уйдет еще дальше), что уже пофигу
> в какой ОС будет исполняться твой код, на каком железе и
> остальные характеристики, и как там бегают битики и байтики
> - никому не интересно. Ну если так в общих чертах иерархию
> представлять.
>
> Если только не будешь заниматься низкоуровневым.
Боюсь время упустить(щас мне 15). Да и как то неуютно себя чувствую без этого..))
← →
IMHO © (2007-05-02 12:47) [5]
> Сом (02.05.07 12:40) [4]
Не слушай Piter-а, он тебя хорошему не научит. Продолжай читать и тянуться к знаниям.
← →
ferr © (2007-05-02 12:53) [6]> [2] Sergey Masloff (02.05.07 12:22)
> Петцольд это совсем детская. Про Танненбаума согласен.
Всё-таки модет петцольд? =)
Автору советую таки поискать книгу "код", там в доступной форме пол книги гонится чушь, а после середины достаточно неплохо рассказывается об устройстве и функционировании простейшого компьютера, есть рассуждения о том какими свойствами должен обладать железка, чтоб её можно было назвать компьютером и в конце приводится краткая историческая справка по операционным системам.
← →
Kostafey © (2007-05-02 13:04) [7]Недавно ветка была про уроки Юрия Зотова.
Тоже не лишне посмотреть.
← →
Евстафий (2007-05-02 13:20) [8]shop.piter.com/book.phtml?978546901274
← →
Piter © (2007-05-02 13:52) [9]IMHO © (02.05.07 12:47) [5]
Не слушай Piter-а, он тебя хорошему не научит
ага, слушай IMHO, научишься клево проводить чемпионаты различные ;)
IMHO © (02.05.07 12:47) [5]
Продолжай читать и тянуться к знаниям
естественно, только делать это надо грамотно. Ставлю ящик пива, что в свои 15 лет ты на 80% не разберешься в том, что пишет Танненбаум. И наверняка разочаруешься в собственных способностях.
Только подавляющее большинство программистов, в том числе получающие килобаксы за свой профессионализм (без кавычек) также в Танненбауме нифига не поймут.
Современные тенденции таковы (и нельзя сказать, что это плохо), что все универсализируется, от железа и зачастую даже ОС мало что зависит. Один из огромных программерских рынков - это БД, уж там кроме совсем тонких вопросов оптимизации тебе и знать то не надо, на чем работает база.
Современные языки, технологии - PHP / Java / .NET - вся их идея в том, чтобы программист не думал о низком уровне, оперируя только высокоуровневыми понятиями. Можно сделать попытку объять необъятное, но получится ли? :)
Так что начинать легко можно с Delphi или того же VB. Потом, если заинтересует как это работает, как это реализовано - разберешься, будет мотивация.
Тупо читать про то, концепцию чего не понимаешь - наивно. Ты перевернешь страничку Танненбаума и забудешь тут же, что была на предыдущей.
← →
Piter © (2007-05-02 13:56) [10]Piter © (02.05.07 13:52) [9]
тебе и знать то не надо, на чем работает база.
имел в виду, естественно, ОС и железо. Саму БД знать, конечно, надо, ибо пока есть различия большие в работе в той или иной БД.
← →
Сом (2007-05-02 14:05) [11]Спасибо всем, уже читаю...
Piter, хочешь сказать, что написав прогу, жрущую память (прстите за такой наивный пример - с соседней ветки...), мне должно быть по барабану?
← →
atruhin © (2007-05-02 14:05) [12]> Не слушай Piter-а, он тебя хорошему не научит.
Это точно. А то потом говориш кому нибудь: глянь окно CPU, а в ответ: там буквы не известные.
Общие принципы работы CPU и ОС знать нужно, даже если на какой нибудь джаве работаеш.
← →
atruhin © (2007-05-02 14:12) [13]> хочешь сказать, что написав прогу, жрущую память (прстите
> за такой наивный пример - с соседней ветки...), мне должно
> быть по барабану?
Это не имеет ни какого отношения к тому что сказал Piter.
> оперируя только высокоуровневыми понятиями.
Конечно можно. Но простой пример: лет шесть не работал с железом, и уже возникала мысль что и не нужно.
Но на днях в очередном проекте понадобилось написать драйвер для USB устройства, раньше драйвера не писал.
Пара дней ушло почитать литературу, посмотреть шаблоны драйверов, в течении недели сделал то что нужно.
Если не знать основы и принципы, сколько бы ушло времени?
← →
Sergey Masloff (2007-05-02 14:17) [14]atruhin © (02.05.07 14:05) [12]
Ну это передергивание. Реально смотреть в окно CPU бывает нужно раз в 100 лет. Обычно ошибка гораздо выше, и чем пялиться в окно CPU лучше просто лишний раз отойти от компьютера и подумать головой.
Лично я не раз по пути домой в общественном транспорте решал проблемы которые в окне CPU до этого пару дней искали.
Хотя если припрет посмотрю без проблем и в окно CPU и в листинг дизассемблера какого-нибудь. Только вот реально необходимость в этом (исключая случаи чистого исследовательского любопытства) не возникала ни разу. Или возникала пару раз но я что-то вспомнить не могу.
← →
Sergey Masloff (2007-05-02 14:18) [15]atruhin © (02.05.07 14:12) [13]
>в течении недели сделал то что нужно.
>Если не знать основы и принципы, сколько бы ушло времени?
Столько же?
Хотя конечно смотря какие основы...
← →
atruhin © (2007-05-02 14:49) [16]> Хотя конечно смотря какие основы...
Мы говорим о их полном отсутствии. Piter вроде предлагал "забить" на основы и начинать с ЯВУ.
> Хотя если припрет посмотрю без проблем и в окно CPU и в
> листинг дизассемблера какого-нибудь. Только вот реально
> необходимость в этом (исключая случаи чистого исследовательского
> любопытства) не возникала ни разу.
Согласен. Но ты не использовал знания полученные в результате "исследовательского любопытства"?
Я пару раз смотрел при оптимизации кода. Например подробно изучал работу со строками.
Конкретный пример: после изучения работы AnsiUpperCase (при реализации сортировки), пришлось
написать своб функцию на асм, скорость увеличилась на порядок (замена одной функции).
← →
Piter © (2007-05-02 15:02) [17]Сом (02.05.07 14:05) [11]
Piter, хочешь сказать, что написав прогу, жрущую память
я хочу сказать, что если ты напишешь прогу за месяц и которая будет работать на двухъядерном Core duo 2, то тебе объявят премию и благодарность. А если ты пообещаешь написать тоже самое через 10 лет на ассемблере, которое будет летать на P-100, то тебя уволят.
atruhin © (02.05.07 14:05) [12]
Общие принципы работы CPU и ОС знать нужно
ага. А для этого хватит 5-6 нормальных статей про это, которые легко усвоятся. Но не вовсе не таненбаум. Ты сам его читал?
atruhin © (02.05.07 14:49) [16]
Мы говорим о их полном отсутствии. Piter вроде предлагал "забить" на основы и начинать с ЯВУ
"мы"? Это не мы. Это ты, который понимает мои слова как хочется.
Да, начинать надо с ЯВУ / RAD, это просто и доступно. Если неподготовленному начинают впаривать про двоичное счисление и семиуровневую иерархию OSI, у него возникает один вопрос "Че?" и вызывает сугубо лишь отвращение.
atruhin © (02.05.07 14:49) [16]
Конкретный пример: после изучения работы AnsiUpperCase (при реализации сортировки), пришлось
написать своб функцию на асм, скорость увеличилась на порядок (замена одной функции).
конкретный пример - ты бы мог просто установить функцию источник тормозов, потом залезть на CodeNet какой-нибудь и взять готовую функцию, там люди на спор соревнуются кто напишет самую скоростную функцию. И уверяю, наилучшая наверняка в 2 раза по быстродействию еще и твою обгонит.
← →
db2admin (2007-05-02 15:04) [18]Piter © (02.05.07 15:02) [17]
Человеку 15 лет, самое время, незнание ассемблера и основ в любом случае минус
← →
Piter © (2007-05-02 15:14) [19]db2admin (02.05.07 15:04) [18]
незнание ассемблера и основ в любом случае минус
на пустом месте - это минус. Если вместо знания ассемблера хорошее знание платформы .NET - что это? В большинстве случаев уже плюс.
← →
stud © (2007-05-02 15:49) [20]Сом (02.05.07 12:16)
Интересует: работа ос, программ на уровне "нулей и единиц",
так это - работа микросхем, тут почитать про основы цифровой техики нужно.
← →
Проходящий (2007-05-02 22:23) [21]Надо изучить ассемблер и все будет на уровне :-)
Качать "Курс молодого бойца" или читать здесь
http://assembler.58r.ru/
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2007.05.27;
Скачать: [xml.tar.bz2];
Память: 0.51 MB
Время: 0.036 c