Где я могу начать лучше понимать, как работают компьютеры?

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

В последнее время я изучаю системы компьютерной безопасности и их использование (исключительно для образовательных целей, по моему собственному имуществу). К сожалению, мне кажется, что 99% людей не знают, о чем они говорят. Часто он просто "запускает это" или "запускает это" или "вы можете найти программу, которая сделает все это для вас" - никто не знает, как работают эти программы или что именно они делают.

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

Мой вопрос сводится к этому.

Я хочу узнать все, что происходит, как взлеты, падения и падения компьютеров - все, от абстрактных понятий, таких как Интернет и передача данных, до аппаратного обеспечения. Я хочу знать, как компьютеры хранят данные (как организованы укусы и т.д.) И какие процессоры и т.д. Что такое WIFI? Соединяются ли компьютеры со светом (что-то я взял из журнала, который я читал в самолете).

У меня многолетний опыт работы с компьютером/программированием, но многое из того, что я знаю о компьютерах в целом, очень велико. Компьютеры отправляют пакеты информации друг в друга, каждый с заголовком и контентом. Компьютеры состоят из нескольких компонентов, каждая из которых имеет свою собственную функцию (процессор, видеокарту, оперативную память, жесткий диск и т.д.), Которые у меня уже есть. и т.д. и т.д.

Существует так много для компьютера, и я не знаю, с чего начать. Я уверен, что некоторые из моих занятий в колледже прояснят мне все, но мне так любопытно, что я хочу начать учиться столько, сколько смогу сейчас.

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

Заранее благодарим за любой совет!

Юстиан Мейер

Пожалуйста, не стесняйтесь редактировать теги для этого вопроса. Нынешние ужасны.

EDIT:

Все эти комментарии заставляют меня возбуждать:). Так много узнать, так много, чтобы исследовать:).

Ответ 1

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

В CMPE вы узнаете как программное обеспечение (C, С++, так и некоторые С#), а затем оборудование (возможно, два класса электротехники). После того, как вы перейдете к программированию сборки, вы начнете узнавать, как эти два объединения составляют все остальное на любом компьютере или встраиваемой системе. Это приведет вас к разрядному уровню памяти, процессору, шинам данных, ввода-выводам и многим другим вещам. Я только начинаю делать Digital Design, и это потрясающе. Из того, что вы описали, вам очень понравится быть крупным CMPE.

Там - специалисты по информатике и программисты; есть инженеры-электрики; но нет сотового телефона, GPS или компьютера, спроектированного без компьютерных инженеров!

Ответ 4

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


@Justian Вижу, извините, я вас несколько неправильно понял. Желание понять тонкости того, как код обрабатывается внутри аппаратного обеспечения, является очень естественным. Когда в колледже я читал книгу "Как работает компьютер" - это довольно простая, даже несколько примитивная книга об общей функциональности аппаратного обеспечения. Но он может широко осветить тему.

Напомнила еще одна аналогия. Скажем, лингвисты изучают внутреннюю механику языка, но это неврологи, которые исследуют, как сигналы языка обрабатываются в мозге. Две очень разные профессии. Это не должно препятствовать вам изучать аппаратное обеспечение, но это просто для того, чтобы подчеркнуть разницу между двумя областями.

Ответ 5

Стив Гибсон из безопасности теперь делает серию подкастов по основам компьютера.

http://www.grc.com/securitynow.htm Эпизод 233 "Пусть дизайн компьютера (часть 1)" до самого последнего "Что мы сделаем" для скорости ".

Каждый другой эпизод, который он делает, получает отзывы и те, которые хороши для прослушивания.

несколько раз (например, прямо сейчас) они прервали серию, если появился важный элемент новостей безопасности (например, когда эта большая вещь SSL сломалась несколько месяцев назад)

Это действительно хорошее шоу, и я рекомендую начать с 233 и проработать свой путь, а затем начать с эпизода 1. Также сделал очень хорошие серии о том, как работает компьютерная сеть и как работает криптография. (Ep 203 взорвется, когда он расскажет о Бойе и Муре  метод поиска)