|
369 / 11 / 1
Регистрация: 23.08.2013
Сообщений: 174
|
|
Знание/не знание устройства компьютера06.09.2013, 19:33. Показов 1522. Ответов 16
Метки нет (Все метки)
Я убедился, что программисты нашей фирмы знают устройство компьютера. Видимо они изучали это в институте. Те кто изучает программирование по самоучителям тоже сталкивается с темами по устройству компьютера. Когда я начал листать учебник, то пропустил этот материал и начал сразу с основ программирования. Правильно ли я сделал?
Я подумал что языки программирования написаны для некой "абстрактной машины" и для того чтобы программировать достаточно знать только математику. А пригодятся ли на самом деле знания об устройстве компьютера?
0
|
|
| 06.09.2013, 19:33 | |
|
Ответы с готовыми решениями:
16
Тест на знание работы и устройства процессоров Знание ООП |
|
15 / 15 / 0
Регистрация: 15.08.2013
Сообщений: 64
|
|
| 06.09.2013, 23:14 | |
|
Конечно пригодятся, к примеру если вы решите программировать на ассемблере.
1
|
|
|
|
||||||||||||
| 07.09.2013, 14:34 | ||||||||||||
|
Прагматичный взгляд таков: нужно знать только то, что знать достаточно для эффективной работы. Вот мне за короткий срок довелось разговаривать с несколькими учёными. Была поставлена одинаковая задача: диффузия примесей в среде. Первым был выч. физик, который решал уравнения диффузии. Не мне Вам рассказывать, как тяжело без сферических коней в вакууме решать уравнения из реального мира численно. Но вот он считал, что уравнения описывают мир, а потому большей конкретики не нужно. Например, для него знания того, какие именно (в цифрах) плотности есть, какой материал — лишняя информация. Другой человек, с которым я говорил, искренне верил, что выч.физик, решающий задачу диффузии ниобия в титане, легированным ниобием, без конкретных до второго знака в мантиссе всех параметров модели, — это теоретик, занимающийся сверхабстрактной задачей, почти не связанной с реальностью. Ощутите контраст. Вам ответ: «функция f на аргументе x возвращает значение y» означает 1. в лямбде: f(x) редуцируется до y 2. в теории множеств: x вступает в отношение f с y, то есть 3. обычно предполагается возможность производить некоторые побочные действия. Механизмы бывают разными, остановлюсь на двух: 3.1. функция — это процедура (подпрограмма) с одним указателем, исп. только на запись:
3.2. в EcmaScript, например, вводится [[CALL]] — псевдометод функции как объекта Function, через который описывается применение функции к аргументам (http://javascript.ru/ecma/part11#a-11.2.3). Работа [[CALL]] описывается, как вычисление Тела Функции. Ваша фраза означает, что после вычисления f(x) — кода Тела Функции f в соответствующем контексте исполнения — получится объект y. Точнее, получится объект Completion вида (return, y), где return указывает на то, что функция завершилась инструкцией return expr, причём expr при оценке дало объект y. По теме: знать особенности исполнителя полезно. Но не всегда необходимо. Вот например, электродинамику знать полезно, потому что с её помощью можно прояснить многое в электронике. В свою очередь, электроника позволяет объяснить строение компьютера, которое в свою очередь позволяет описать, что да как да почему работает в откомпилированной программе. До основ не доберёшься. Используйте возможность узнать об исполнителе, но не зацикливайтесь на этом, если это не есть Ваша цель.
2
|
||||||||||||
| 07.09.2013, 18:03 | ||
Просто есть разные взгляды, обмен ими (в культурной форме) на мой взгляд интересен.Хорошо, послушаем ответ ТС (а то в "почемучку" играть легко), а потом я кажу свою версию. Да, и вот еще из той же оперы - приведите пример фунуции которая не вычисляет свои аргумент(ы)
1
|
||
|
369 / 11 / 1
Регистрация: 23.08.2013
Сообщений: 174
|
|||
| 07.09.2013, 18:17 [ТС] | |||
|
Добавлено через 3 минуты
0
|
|||
| 07.09.2013, 19:17 | ||||
Результат может быть в др и/или неск регистрах, на стеке, а в модных языках вообще.. Да и "собственно AX" уже давно нет. Однако на мой взгляд человеку хоть как-то знакомому с железом это все и сразу объясняет. Ясно что если немедленно не переписать AX куда-то (обычно в переменную) то мы его потеряем, что впрочем не всегда ошибка.
1
|
||||
|
369 / 11 / 1
Регистрация: 23.08.2013
Сообщений: 174
|
|||
| 07.09.2013, 20:29 [ТС] | |||
|
Добавлено через 3 минуты
0
|
|||
| 07.09.2013, 21:05 | ||
|
Не по теме:
Ссылка тоже "вычисляется" - в том смысле что есть хотя бы одна машинная команда оперирующая с аргументом. Вообще понятие "ссылка" лучше тоже объяснить с позиций железа - хотя физически ее не существует. Как видите, знание железа совсем небесполезно. По поводу всяких там изучений в колледже - фуфло. Вот заклинит код, берете отладчик - и смотрите, ото изучение.
1
|
||
|
369 / 11 / 1
Регистрация: 23.08.2013
Сообщений: 174
|
||
| 07.09.2013, 21:21 [ТС] | ||
|
Добавлено через 3 минуты То есть вы утверждаете, что функция, которая не вычисляет своих аргументов, в программном виде существовать не может. А может лишь в аппаратном виде. Сам не понял, что сказал... Тогда какая связь между этой функцией и знанием железа?
0
|
||
|
Модератор
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
|
|||
| 07.09.2013, 21:44 | |||
|
Не по теме:
но даже на х86 ты не совсем прав возвращать может в флаге C (для bool)а так же AX для 16 компиляторов и 16 значений DX:AX 16битные компиляторы и 32битные значения EAX 32 битные компиляторы EAX:EDX 64битные значения 32битные компиляторы за 64 битные компиляторы не скажу, не знаю но нужны еще ввод/вывод без этого программа не нужна а там, особенно если работаешь с графикой, уже нужно знать особенности ОС плюс если ты пытаешься оптимизировать вручную, это чаше всего ассемблер, знание железа необходимы а если захочешь написать БИОС то без знаний железа никуда
1
|
|||
|
Супер-модератор
|
|
| 07.09.2013, 23:02 | |
|
Знания лишними не бывают. Но есть разные подходы:
Инженерный - когда можно сказать: "вот ЭТО - черный ящик. Как он работает, мне знать не обязательно. Достаточно подать вот это на вход, чтобы получить нужный выход". Пример: инженер-электроник не обязан знать, как работает транзистор. Ему достаточно знать его внешние характеристики Подход ученого - без черых ящиков. Ученый стремится понять, что происходит внутри. А как это использовать - пусть думает инженер. В действительности, в мышлении человека присутствуют оба подхода. Избыток одного из них может и вредить... Все зависит от задач и от пристрастий.
1
|
|
| 08.09.2013, 07:27 | ||||
![]()
1
|
||||
| 08.09.2013, 08:14 | |
|
1
|
|
|
369 / 11 / 1
Регистрация: 23.08.2013
Сообщений: 174
|
|
| 08.09.2013, 08:16 [ТС] | |
|
0
|
|
| 08.09.2013, 08:45 | |||||||
1
|
|||||||
|
Супер-модератор
|
||
| 08.09.2013, 10:03 | ||
|
Могу развернуть свой тезис: берем, к примеру, хирургию. Повредит ли хирургу знание, например, механики? Нет, поможет. Тут можно было бы возразить: а нужны ли хирургу знания в области лингвистики? Навскидку - нет. Но мышление человека - сложный и непознанный (пока) процесс. Возможно и влияние знаний из совсем несмежных областей. Применительно к программированию. Знакомство с машинным языком полезно однозначно! Помню, никак не укладывались у меня объекты... Пока в одной книге не прочитал, что есть объект с точки зрения ассемблера - просто блок памяти, в котором лежат значения полей и ссылки на методы. Всё! Вот так.
2
|
||
| 08.09.2013, 10:03 | |
|
Помогаю со студенческими работами здесь
17
Знание протоколв Тест на знание C++ Знание - сила! Тест на знание предмета Знание архитектуры x86 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536
Одним из. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|