vit_r: default (Default)
[personal profile] vit_r
В принципе, тут эти писательские заморочки мало кому интересны. Разве что кроме одного небольшого куска.

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

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

Первым делом, это живое существо. Причём, достаточно разумное. Программы, живущие внутри него, тоже могут быть для пользователя сущностями одушивлёнными.

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

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

Однако, не стоит думать, что люди, программы создающие, в чём-то рациональнее обычного пользователя. Может быть, когда-то давно, специалисты знающие ассемблер, самостоятельно паяющие платы и могущие запрограммировать процессор в микрокоде, и относиись к компьютерам как к железу. Но современные поколения всё дальше от этих древних существ. Даже банальные ошибки превратились сейчас в злобных мифических существ, повсеместно гордо носящих страшное имя "баги".

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

Date: 2009-03-11 02:07 am (UTC)
From: [identity profile] panchul.livejournal.com
Микрокод - это черта некоторых архитектур 1960-1970-х. Сейчас так не говорят. Я использовал дюжину ассеблеров, и даже сделал дизайн игрушечного конвейерного процессора. При достаточном количестве времени я могу его спаять из микросхем малой степени интеграции, т.е. вентилей и, или, нет и триггеров. Компьютер - железное железо и ничего кроме железа.

Все методологии писания софтвера, кроме самых древних (структурное программирование) - это способ получения денег консультантами. Многие суровые компании во внутренних методологиях довольно консервативны. Например в 1990-е внутри Микрософта группа Outlook писала на C, а не C++ (в то время как люди вокруг стали писать на C++).



Но насчет магического мышления у современных людей я согласен. Только:

1. Вера в магию у разных людей разная (это наверное связано с генами).

2. Есть куча людей, которые фанатично верят в извращенно понимаемую "экологию", "державность" или там "recycling" и другие религии этого типа.
Edited Date: 2009-03-11 02:24 am (UTC)

Date: 2009-03-11 10:43 am (UTC)
From: [identity profile] vit-r.livejournal.com
Микрокод - это двоичное представление. Компьютеры говорят всё-таки не на ассемблере. "Могущий" - это не занимающийся этими извращениями, а способный такое сделать. В наше время полно программистов, осознающих мир только в десятичной системе.

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

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

Date: 2009-03-11 05:56 pm (UTC)
From: [identity profile] panchul.livejournal.com
Двоичное представление комманд процессора не называется микрокодом.

Например в Intel 8086

0111 0101 0000 0010

- это JNE 2 (или Jump not equal со смещением 2)


Это не микрокод. Такие инструкции называют "машинный код", но это не микрокод. Микрокод - это простые инструкции, которые использовались для реализации инструкций высокого уровня на CISC-машинах (т.е. на каком-нибудь IBM/360 команда подобная выше кодировалась последовательностью микрокода). В типичной имплементации, большинство битов такой инструкции просто переключали какую-нибудь control logic. С появлением RISC в начале 1980-х это насколько я понимаю стало неактуальным - процессоры стали hardwared, они понимали машинные коды без промежуточного уровня микропрограммирования.



Вот хорошая статья об истории микропрограммирования - http://www.cs.clemson.edu/~mark/uprog.html

Она подтверждает мою мысль:

Пик популярности микропрограммирования совпал с пиком популярности CISC:

At perhaps the peak of microprogramming's popularity, the DEC VAX 11/780 was delivered in 1978 with a 4K word read-only control store of 96 bits per word and an additional 1K writable region available for diagnostics and microcode patches. An extra-cost option on the 11/780 was 1K of user-writable control store.


The 1980's proved to be a turning point for the use of traditional microprogramming. The RISC microprocessors introduced in the 1980's, like SPARC and MIPS, were hardwired. In the 1990's, the MC68000 macroinstruction set was downsized, so that the implementation of the remaining core macroinstruction set could be hardwired [Cir95]. Application specific tailoring of hardware also began to be approached as an ASIC or FPGA design problem rather than seen as requiring microprogramming.

Microcode was still used, however, in the numerous Intel x86 compatible microprocessors like the Intel Pentium Pro and its descendants and in the AMD microprocessors. However, within these designs, simple macroinstructions have one to four microinstructions (called uops or Rops, respectively) immediately generated by decoders without control store fetches.

- т.е. микрооперации в Пентиуме существуют, но так как они не записаны в control store, а сразу производятся декодером при обработке обычных инструкций, то писать микропрограммы для Пентиума нельзя.
Edited Date: 2009-03-11 06:13 pm (UTC)

Date: 2009-03-11 07:04 pm (UTC)
From: [identity profile] vit-r.livejournal.com
Можно узнать, с чем связано постоянное редактирование текста?

В микрокодах я программировали и прекрасно знаю, что это такое. Но при этом твёрдо уверен, что этот этап обучения, также как и проектирование микропроцессора с простейшим набором команд, должен пройти любой человек, готовящийся работать в ИТ.

Впрочем, данный пост совсем не об этом.

Date: 2009-03-11 08:49 pm (UTC)
From: [identity profile] panchul.livejournal.com
*** Можно узнать, с чем связано постоянное редактирование текста? ***

Я извиняюсь, если это вас раздражает. Я просто так длинные комментарии пишу. Напишу текст - поправлю. В данном случае это полезно, так как я заодно вспомнил историю микрокода.

*** В микрокодах я программировали и прекрасно знаю, что это такое ***

Я просто не был вполне уверен в этом, так как вы написали "Микрокод - это двоичное представление. Компьютеры говорят всё-таки не на ассемблере". Дело в том, что двоичное представление комманд процессора совпадает с микрокодом только в случаях некоторых процессоров, например PDP-8. Во всяких MIPS-ах вообще никакого микрокода нет, хотя двоичное представление команд конечно же есть.

*** Но при этом твёрдо уверен, что этот этап обучения, также как и проектирование микропроцессора с простейшим набором команд, должен пройти любой человек, готовящийся работать в ИТ. ***

С этим я согласен, хотя 90+% людей в IT этим не владеют. Действительно, понимает, что под командами процессора сидит не "злой дух", а нечто понятное - это важно.

Profile

vit_r: default (Default)
vit_r

April 2026

S M T W T F S
    12 3 4
56 7 891011
12131415161718
19202122232425
2627282930  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Apr. 12th, 2026 07:17 am
Powered by Dreamwidth Studios