avva: (Default)
[personal profile] avva
То, что я недостаточно "old school" в программировании, легко видеть по тому факту, что фразы вроде \123 для меня - иностранный язык: приходится в уме переводить. А вот \x7F какое-нибудь - родной; причем это не значит, что я сразу понимаю, какое это число в десятичной системе, просто обычно и переводить не нужно, и так сразу представляешь примерную величину и можешь с ним напрямую работать.

Если я, скажем, вижу поток символов на экране, в котором символ вне ASCII записан как \320, это вызывает раздражение, а если \xD0 - понимание. Первый вид передачи мне нужно переводить, он на чужом языке, а второй - на своем.

(для тех, кто не понимает в программировании: \123 - запись в восьмеричной системе счисления, \x7F - в шестнадцатеричной; в прошлом восьмеричная запись была более популярна, чем шестнадцатеричная, но уже довольно давно ситуация сменилась на обратную)

Date: 2007-12-01 09:43 pm (UTC)
From: [identity profile] kouzdra.livejournal.com
Ну да - и магическое значение числа 357 уже неведомо.

Date: 2007-12-01 11:11 pm (UTC)
From: [identity profile] avva.livejournal.com
А какое у него магическое значение?

Date: 2007-12-01 11:23 pm (UTC)
From: [identity profile] avva.livejournal.com
а, в смысле школа? ну, это неинтересно.

Date: 2007-12-01 09:45 pm (UTC)
From: [identity profile] kot-ivanovich.livejournal.com
Если бы Господь хотел, чтобы мы это понимали, он бы дал нам 16 пальцев.
-- Программист старой школы

Date: 2007-12-01 09:51 pm (UTC)
From: [identity profile] muchacho.livejournal.com
Олдскульные программисты в качестве инициации откусывали себе мизинцы?

Date: 2007-12-01 09:54 pm (UTC)
From: [identity profile] kot-ivanovich.livejournal.com
Нет, просто запихивали их в уши – чтобы пулемётная дробь АЦПУ-128 не отвлекала от подсчётов.

Date: 2007-12-01 10:29 pm (UTC)
From: [identity profile] kostya-moskowit.livejournal.com
программисты последних моделей в отдел кадров сразу с 64мя пальцами приходят. И как растапырят!

Date: 2007-12-01 09:45 pm (UTC)
From: (Anonymous)
(для тех, кто не понимает в программировании: \123 - запись в восьмеричной системе счисления, \x7F - в шестнадцатеричной; в прошлом восьмеричная запись была более популярна, чем шестнадцатеричная, но уже довольно давно ситуация сменилась на обратную)



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

Date: 2007-12-01 09:50 pm (UTC)
From: [identity profile] alta-voce.livejournal.com
Я, похоже, не old school, не new, а какой-то middle. Никогда не видала такого.

Date: 2007-12-01 09:50 pm (UTC)
From: [identity profile] french-man.livejournal.com
Я начал программировать в 1986 г. Но восьмеричной системы не помню.

Date: 2007-12-01 10:08 pm (UTC)
From: (Anonymous)
Да, там ничего особенного помнить не надо
Это тоже самое, что и десятичная, и шестнадцетеритичная, но по основанию 8, а не 10 или 16.
То есть если дано символьное представление числа \abcd, то его значение будет a*8^3 + b * 8^2 + c * 8^1 + d * 8^0
(8^0 == 1)

Date: 2007-12-01 10:10 pm (UTC)
From: [identity profile] french-man.livejournal.com
Огромное спасибо за объяснение.

Date: 2007-12-01 10:15 pm (UTC)
From: (Anonymous)
Пожалуйста.
Теперь Вы тоже опытный програмист старой школы

Date: 2007-12-01 10:25 pm (UTC)
From: [identity profile] french-man.livejournal.com
Это большая честь для меня.

Date: 2007-12-01 10:15 pm (UTC)
From: [identity profile] avva.livejournal.com
Примерно в начале 80-х, как я себе представляю, она начала серьезно сдавать позиции. Одной из главных причин стала стандартизация на 8-битном байте (и соответственно 16-, 32- и 64-битных величинах, складывающихся из байтов), потому что 3 бита восьмеричной системы не укладываются в него целое число раз.

Date: 2007-12-01 10:25 pm (UTC)
From: [identity profile] french-man.livejournal.com
Ну да, резонно. 3 цифры ни туды, ни сюды.

Я думаю, что даже раньше. В 81 году нам в универе преподавали программирование, и там была только 16-ричная система (ну, наряду с двоичной и десятичной). Про 8-ричную ничего не рассказывали.

Date: 2007-12-02 10:12 am (UTC)
From: [identity profile] fima.livejournal.com
Дело не в годе, а в платформе, использовавшейся для преподавания.

Date: 2007-12-01 11:11 pm (UTC)
From: [identity profile] gt.livejournal.com
причины есть и иные. самым модным компьютером 70-х - первой половины 80-х была PDP-11, и другие машины, для которых 8-ричное представление было удобней (8 регистров).

Date: 2007-12-01 11:44 pm (UTC)
From: [identity profile] kot-ivanovich.livejournal.com
Да ну. PDP11 – это действительно модная машина 70-ых, но модной машиной 60-ых была IBM/360, которая предпочитала шестнадцатиричную. Я думаю причин две: первая – это, действительно, стандартизация байта, а вторая – широкое распространение калькуляторов ;-) Восьмеричные числа я легко складывал/умножал в уме или на бумажке в столбик, с шестнадцатиричными это сложнее, но ведь уже никому и не нужно...

Date: 2007-12-01 11:14 pm (UTC)
From: [identity profile] gogabr.livejournal.com
Если я правилльно понимаю, дело не в 8-битном байте, а в системе команд PDP-11.
Там были внутри команд трехбитные поля -- например, в процессоре 8 регистров, и номер регистра часто занимал такое поле. Поэтому восьмеричный дамп было читать намного удобнее, чем шестнадцатеричный,
А у тех кто работал, например, на IBM 360, и тогда шестнадцатеричная запись была популярнее.

Date: 2007-12-01 11:41 pm (UTC)
From: [identity profile] 37.livejournal.com
Как помните, c середины 70-х доминировали две ветки: DEC и IBM. 1-я традиционно придерживалась 8-ричной схемы, вторая - 16-тиричной. Это определялось принятых в их архитектурах системах команд. Сначала они шли голова в годову (PDP-IBM360, WAX-IBM370/390), но потом DEC сломался и ушел со сцены, а с ним и восьмеричные коды, а с ним и восьмеричные коды. Почти во всех DEC-ах слова были тоже байт-кратные (разные кратности для разных моделей). В одной из самых популярных - PDP-11 слово было 16 бит. (Кстати, если помните, были и 1-битовые машины, кажется, Burroughs) Восьмеричная система еще жива, потому что успела прорасти в С и UNIX.

Date: 2007-12-02 08:14 pm (UTC)
From: [identity profile] mfi.livejournal.com
Пишу с 80-го. Аналогично. FF это наше фсе.

Date: 2007-12-01 10:03 pm (UTC)
From: [identity profile] kostya-moskowit.livejournal.com
скажи, о милый френд, а 32хзначные программисты уже появились? И долго ли учиться на 64хзначных? Ведь пора уже.

Date: 2007-12-01 10:08 pm (UTC)
From: [identity profile] avva.livejournal.com
Я уже и так обычно в 64bit пишу.

Date: 2007-12-01 10:26 pm (UTC)
From: [identity profile] kostya-moskowit.livejournal.com
в твоей продвинутости я и не сомневался. Так как буква Ё в 64ой раскладке значицца?

Или опять - проклятая совместимость?

Date: 2007-12-01 11:08 pm (UTC)
From: [identity profile] avva.livejournal.com
что-то вы кажется не вполне понимаете насчет раскладок.

Date: 2007-12-01 11:28 pm (UTC)
From: [identity profile] kostya-moskowit.livejournal.com
1.Я закончил обучение програмированию в 95-ом
2. Я специализируюсь на сложных вопросах при приеме на работу.
3. Согласись, что вопрос мною заданный на грейд А среднему программистусу обыкновенному. :)

Разницу между цифрой в разных записях я знаю, и как ссылка на ASCII выглядит тоже. А вот как их в 64-битных программах юзают я не в курсах.Тут я отстал.

Date: 2007-12-02 12:38 am (UTC)
From: [identity profile] ygam.livejournal.com
А я пишу на Джаве, и не знаю, на сколькибитном процессоре это исполняется.

Date: 2007-12-01 10:20 pm (UTC)
From: (Anonymous)
а мы себе делали восьмеричные счеты (like abacus)
sorry for анонимность

Date: 2007-12-01 11:10 pm (UTC)
From: [identity profile] avva.livejournal.com
восьмеричные счеты - это отлично :)

Date: 2007-12-01 10:25 pm (UTC)
spamsink: (Default)
From: [personal profile] spamsink
Понимать UTF-8 как раз удобнее в восьмеричной системе.
\3ab\2cd - это U+0abcd. Трехсимвольные коды недалеко ушли: \3ab\2cd\2ef, где a > 3, это U+0gbcdef, где g = a-4.

Date: 2007-12-01 10:58 pm (UTC)
From: [identity profile] slobin.livejournal.com
Никогда не считал себя особенно опытным программистом, но по этому критерию я олдовый: escape -- это, конечно же, \033. ;-) Начинал с ассемблера PDP-11.

... Торможение свободного взлетания ...

Date: 2007-12-01 11:07 pm (UTC)
From: (Anonymous)
я кстати из тех кто выучил восмеричную раньше шестнадцатеричной, но с тех пор
к уже давно переучился :) но все равно 377 мне больше нравится чем FF :)

Date: 2007-12-01 11:09 pm (UTC)
From: [identity profile] vzaliva.livejournal.com
пардон, забыл залогиниться...

Date: 2007-12-02 08:31 pm (UTC)
From: [identity profile] mfi.livejournal.com
377 - не туды и не сюды, уж лучше FF. 177777 - это я понимаю. По словам читать надо, не по байтам!

(Экс IBMовец, с нежностью вспоминающий СМ-2 и дивные вечера на ДВК под RT11)

А еще мы считали в RADIX, молодежь поди и слова такого не знает :-)

Date: 2007-12-01 11:19 pm (UTC)
From: [identity profile] msh.livejournal.com
Если я правильно помню хронологию, те, кому восьмеричная система родная - уже на пенсии или, в крайнем случае, переучены тридцатью годам шестнадцатеричной терапии. То есть обычно это не old school а или манерство, или тяжелое наследии СССР, где клоны PDP-11 чуть ли не до 21-го века дожили

Date: 2007-12-02 03:09 am (UTC)
From: [identity profile] a-bronx.livejournal.com
Интересно, какой вид записи самый олдскульный: \x7F или 0x7F или 7Fh?

Date: 2007-12-02 05:13 am (UTC)

Date: 2007-12-02 04:44 am (UTC)
From: [identity profile] kot-begemot.livejournal.com
Да ну, фигня какая. Шестнадцатиричная система применялась изначально на всех мейнфреймах и прочих IBM-ских машинах.
А восьмеричная - исключительно на монстрах от CDC (с которой драли советские "Мински"), и потом уже, по инерции, на PDP, начиная с 8 и до 11 включительно. Что самое интересное - с приходом 32-битных VAX-ов восьмиричная система потихоньку стала отмирать даже в Digital.
Так что это скорее признак приверженности определённой модели, чем принадлежности к старой школе. Те, кто начинал с IBM 709 и/или 360 в конце пятидесятых, восьмиричной системой не пользовались практически никогда.

Date: 2007-12-02 08:15 am (UTC)
From: [identity profile] avva.livejournal.com
Да? Я не знал всего этого, спасибо :)

Date: 2007-12-02 05:11 am (UTC)
From: [identity profile] shmel39.livejournal.com
А для меня и 8-ричная, и 16-ричная системы - иностранный язык. Нет, я могу, конечно, на бумаге переводить одно в другое, использовать эти записи в арифметических операциях, но так чтоб в голове...

Date: 2007-12-02 09:34 am (UTC)
From: [identity profile] itman.livejournal.com
Согласно легенде, небезызвестная Грейс-Мюррей Хоппер не могла свести баланс по своим банковским счетам. Она обратилась к брату за помощью. То без проблем решил данную задачу, попутно выяснив, что баланс Грейс пыталась сводить в восьмиричной (если мне память не изменяет) системе счисления. Это было очень давно, задолго до 80х

Date: 2007-12-02 11:14 am (UTC)
From: [identity profile] akho.livejournal.com
Еще 755=rwxr-xr-x. И как его понимать в шестнадцатиричной системе — непонятно.

Это, наверное, наследие PDP. Или так.
(deleted comment)

Date: 2007-12-03 10:39 am (UTC)
From: [identity profile] akho.livejournal.com
восьмеричный 755 это шестнадцатиричный 1ED. 1ed в приложении к permissions не зашит в подкорку. Все, что я хотел сказать.

Date: 2007-12-02 12:23 pm (UTC)
From: [identity profile] prool.livejournal.com
Это не старая и новая школы. Это две старые школы - школа Intel/IBM и школа DEC. У них все было наоборот. У Интел 16-ричная система, у Диджитал - 8-ричная. У Интел на диаграммах начало ОЗУ серху, у DEC снизу. В ассемблере у DEC вначале идет источник, потом приемник, у Интел наоборот. И так далее... Даже в СССР изделия Интел копировались ведомством Минрадиопрома, а DEC - Минэлектро.
(deleted comment)

Date: 2007-12-03 01:45 am (UTC)
From: [identity profile] joppux.livejournal.com
В микрософтских версиях Basic - префиксы &O и &H.
В Турбо-Паскале вообще восмеричных чисел не было.

January 2026

S M T W T F S
    1 2 3
4 5 6 7 8 910
11 12 1314151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 15th, 2026 02:37 pm
Powered by Dreamwidth Studios