Что такое исполняемый код

Исполняемый код

Машинный код (также употребляются термины собственный код, или платформенно-ориентированный код, или родной код, или нативный код — от англ. native code ) — система команд (язык) конкретной вычислительной машины (машинный язык), который интерпретируется непосредственно микропроцессором или микропрограммами данной вычислительной машины.

Каждая модель процессора имеет свой собственный машинный язык, хотя во многих моделях эти наборы команд сильно перекрываются. Говорят, что процессор A совместим с процессором B, если процессор A полностью «понимает» машинный код процессора B. Если процессор A знает несколько команд, которых не понимает процессор B, то B несовместим с A.

«Слова» машинного языка называются машинными инструкциями. Каждая из них описывает элементарное действие, выполняемое процессором, такое как «переслать байт из памяти в регистр». Программа — это просто длинный список инструкций, выполняемых процессором. Раньше процессоры просто выполняли инструкции одну за другой, но новые суперскалярные процессоры способны выполнять несколько инструкций за раз. Прямой поток выполнения команд может быть изменён инструкцией перехода, которая переносит выполнение на инструкцию с заданным адресом. Инструкция перехода может быть условной, выполняющей переход только при соблюдении некоторого условия.

Также инструкции бывают постоянной длины (у MISC-архитектур) и диапазонной (у x86 команда имеет длину от 8 до 120 битов).

См также

Полезное

Смотреть что такое «Исполняемый код» в других словарях:

исполняемый код — 3.4. исполняемый код : Файл, установленный в вычислительном компоненте СИ, электронном устройстве или его части (ПЗУ, жесткий диск и т.д.). Микропроцессор интерпретирует содержимое файла (код) и преобразует его в определенные логические,… … Словарь-справочник терминов нормативно-технической документации

Код (значения) — Код (фр. code, от лат. codex): В Викисловаре есть статья «код» … Википедия

Код оболочки — Код оболочки, шелл код (англ. shellcode) это двоичный исполняемый код, который обычно передаёт управление консоли, например /bin/sh Unix shell, command.com в MS DOS и cmd.exe в операционных системах Microsoft Windows. Код оболочки может быть… … Википедия

Код консоли — Код оболочки, шелл код (англ. shellcode) это двоичный исполняемый код, который обычно передаёт управление консоли, например /bin/sh Unix shell, command.com в операционных системах Microsoft Windows. Код оболочки может быть использован как… … Википедия

Код (компьютер) — Исходный код, написанный на JavaScript Исходный код (также исходный текст) текст компьютерной программы на каком либо языке программирования. В обобщённом смысле любые входные данные для транслятора. Исходный код либо транслируется в… … Википедия

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

Программный код — Исходный код, написанный на JavaScript Исходный код (также исходный текст) текст компьютерной программы на каком либо языке программирования. В обобщённом смысле любые входные данные для транслятора. Исходный код либо транслируется в… … Википедия

Шелл-код — (англ. shellcode, код запуска оболочки) это двоичный исполняемый код, который обычно передаёт управление командному процессору, например /bin/sh в Unix shell, command.com в MS DOS и cmd.exe в операционных системах Microsoft Windows.… … Википедия

Байт-код — или байткод (англ. byte code), иногда также используется термин псевдокод машинно независимый код низкого уровня, генерируемый транслятором и исполняемый интерпретатором. Большинство инструкций байт кода эквивалентны одной или… … Википедия

Промежуточный код — Байт код или байткод (англ. byte code), иногда также используется термин псевдокод машинно независимый код низкого уровня, генерируемый транслятором и исполняемый интерпретатором. Большинство инструкций байт кода эквивалентны одной или нескольким … Википедия

Источник

исполняемый код

3.4. исполняемый код : Файл, установленный в вычислительном компоненте СИ, электронном устройстве или его части (ПЗУ, жесткий диск и т.д.). Микропроцессор интерпретирует содержимое файла (код) и преобразует его в определенные логические, арифметические, декодирующие операции или операции передачи данных [1].

Смотреть что такое «исполняемый код» в других словарях:

Исполняемый код — Эта статья о системе команд в целом; об инструкциях см.: Код операции (информатика). Машинный код (также употребляются термины собственный код, или платформенно ориентированный код, или родной код, или нативный код от англ. native code) система… … Википедия

Код (значения) — Код (фр. code, от лат. codex): В Викисловаре есть статья «код» … Википедия

Код оболочки — Код оболочки, шелл код (англ. shellcode) это двоичный исполняемый код, который обычно передаёт управление консоли, например /bin/sh Unix shell, command.com в MS DOS и cmd.exe в операционных системах Microsoft Windows. Код оболочки может быть… … Википедия

Код консоли — Код оболочки, шелл код (англ. shellcode) это двоичный исполняемый код, который обычно передаёт управление консоли, например /bin/sh Unix shell, command.com в операционных системах Microsoft Windows. Код оболочки может быть использован как… … Википедия

Код (компьютер) — Исходный код, написанный на JavaScript Исходный код (также исходный текст) текст компьютерной программы на каком либо языке программирования. В обобщённом смысле любые входные данные для транслятора. Исходный код либо транслируется в… … Википедия

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

Программный код — Исходный код, написанный на JavaScript Исходный код (также исходный текст) текст компьютерной программы на каком либо языке программирования. В обобщённом смысле любые входные данные для транслятора. Исходный код либо транслируется в… … Википедия

Шелл-код — (англ. shellcode, код запуска оболочки) это двоичный исполняемый код, который обычно передаёт управление командному процессору, например /bin/sh в Unix shell, command.com в MS DOS и cmd.exe в операционных системах Microsoft Windows.… … Википедия

Байт-код — или байткод (англ. byte code), иногда также используется термин псевдокод машинно независимый код низкого уровня, генерируемый транслятором и исполняемый интерпретатором. Большинство инструкций байт кода эквивалентны одной или… … Википедия

Промежуточный код — Байт код или байткод (англ. byte code), иногда также используется термин псевдокод машинно независимый код низкого уровня, генерируемый транслятором и исполняемый интерпретатором. Большинство инструкций байт кода эквивалентны одной или нескольким … Википедия

Источник

Исполняемый код

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

Маши́нный код (платфо́рменно-ориенти́рованный код), маши́нный язы́к — система команд (набор кодов операций) конкретной вычислительной машины, которая интерпретируется непосредственно процессором или микропрограммами этой вычислительной машины. [1]

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

Каждая модель процессора имеет собственный набор команд, хотя во многих моделях эти наборы команд сильно перекрываются. Говорят, что процессор A совместим с процессором B, если процессор A полностью «понимает» машинный код процессора B. Если процессоры A и B имеют некоторое подмножество инструкций, по которым они взаимно совместимы, то говорят, что они одной «архитектуры» (имеют одинаковую архитектуру набора команд).

Содержание

Машинная инструкция

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

Операции, записываемые в виде одной машинной инструкции, можно разделить на «простые» (элементарные операции) и «сложные». Кроме того, большинство современных процессоров состоит из отдельных «исполнительных устройств» — вычислительных блоков, которые умеют исполнять лишь ограниченный набор простейших операций. При исполнении очередной инструкции специальный блок процессора — декодер — транслирует (декодирует) её в последовательность элементарных операций, понимаемых конкретными исполнительными устройствами.

Архитектура набора команд процессора определяет, какие операции он способен выполнять, и какой машинной инструкции какие числовые коды операций (опкоды) соответствуют. Опкоды бывают постоянной длины (у RISC-, MISC-архитектур) и диапазонной (у CISC-архитектур; например: для архитектуры x86 команда имеет длину от 8 до 120 битов).

Современные суперскалярные процессоры способны выполнять несколько машинных инструкций за один такт.

Машинный код как язык программирования

Машинный код можно рассматривать как примитивный язык программирования или как самый низкий уровень представления скомпилированных или ассемблированных компьютерных программ. Хотя вполне возможно создавать программы прямо в машинном коде, сейчас это делается редко в силу громоздкости кода и трудоёмкости ручного управления ресурсами процессора, за исключением ситуаций, когда требуется экстремальная оптимизация. Поэтому подавляющее большинство программ пишется на языках более высокого уровня и транслируется в машинный код компиляторами. Машинный код иногда называют нативным кодом (также собственным или родным кодом — от англ. native code ), когда говорят о платформенно-зависимых частях языка или библиотек. [2]

Программы на интерпретируемых языках (таких как Basic или Python) не транслируются в машинный код; вместо этого они либо исполняются непосредственно интерпретатором языка, либо транслируются в псевдокод (байт-код). Однако интерпретаторы этих языков (которые сами можно рассматривать как процессоры), как правило, представлены в машинном коде.

Микрокод

В некоторых компьютерных архитектурах поддержка машинного кода реализуется ещё более низкоуровневым слоем программ, называемых микропрограммами. Это позволяет обеспечить единый интерфейс машинного языка у всей линейки или семейства компьютеров, которые могут иметь значительные структурные отличия между собой, и облегчает перенос программ в машинном коде между разными моделями компьютеров. Примером такого подхода является семейство компьютеров IBM System/360 и их преемников: несмотря на разные шины шириной от 8 до 64 бит и выше, тем не менее, у них общая архитектура на уровне машинного языка.

Использование слоя микрокода для реализации эмулятора позволяет компьютеру представлять архитектуру совершенно другого компьютера. В линейке System/360 это использовалось для переноса программ с более ранних машин IBM на новое семейство — например, эмулятор IBM 1401/1440/1460 на IBM S/360 model 40.

Абсолютный и позиционно-независимый код

Позиционно-независимый код (англ. position-independent code ) — программа, которая может быть размещена в любой области памяти, так как все ссылки на ячейки памяти в ней относительные (например, относительно счётчика команд). Такую программу можно переместить в другую область памяти в любой момент, в отличие от перемещаемой программы, которая хотя и может быть загружена в любую область памяти, но после загрузки должна оставаться на том же месте. [1]

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

Программа «Hello, world!»

Программа «Hello, world!» для процессора архитектуры x86 (ОС MS DOS, вывод при помощи BIOS прерывания int 10h) выглядит следующим образом (в шестнадцатеричном представлении):

BB 11 01 B9 0D 00 B4 0E 8A 07 43 CD 10 E2 F9 CD 20 48 65 6C 6C 6F 2C 20 57 6F 72 6C 64 21

Данная программа работает при её размещении по смещению 10016. Отдельные инструкции выделены цветом:

Источник

Компиляция. 9: исполняемый код

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

Далее в посте:

Выбор кода

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

Постараемся генерировать «кроссплатформенный» код, одинаково работоспособный и на x86, и на x64. Сосредоточимся именно на машинном коде, а не на внутренностях формата ELF и взаимодействии с загрузчиком; поэтому будем создавать код «сплошным куском», аналогично досовскому формату COM. Читать его с диска и запускать будет наш собственный загрузчик.

Пользоваться будем только 32-битными регистрами, так что одна и та же программа, даже если в ней при вычислениях происходят переполнения, будет давать одинаковые результаты и на x64, и на x86.

Какой код будем генерировать, разобрались; дело за малым — реализовать задуманное.

Загрузчик

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

const char * fdata = NULL ; // весь прочитанный код

int main( int argc, char ** argv) <

if (argc!= 2 ) <
printf( «Missing code file name. \n » );
exit( 1 );
>

(( void (*)( void **)) fdata)(linkarea); // запуск

Изменения в п-коде

Особенность набора инструкций x86/x64 — его разнообразие и неортогональность. Едва ли не любую операцию можно закодировать тремя-четырьмя разными способами. Постараемся для каждой п-команды выбирать самую компактную из возможных реализаций. (Это предельный случай «оптимизации сквозь глазок» — peephole optimization, занимающейся не программой в целом, а короткими блоками смежных команд. У нас вообще каждая команда обрабатывается независимо от окружающих.)

Генерация

Итак, на первом проходе по п-коду генерируем весь исполнимый код в векторе code ; затем пройдём по коду второй раз, и заполним недостающие смещения. После этого выводим в результат весь код и все строки.

Я постарался убрать из листинга самые неинтересные куски, чтоб хоть немного его сократить. Полный код компилятора выложен на tyomitch.net.ru/jsk.y.natv.html

Что получилось?

Компилируем компилятор, компилируем им тестовую программу, компилируем загрузчик, и запускаем:

]$ bison jsk.y
[tyomitch@home

]$ ./jskld code
Задумай число от 0 до 1000, а я буду угадывать
Это 500? (1=меньше, 2=больше, 3=попал) 1
Это 249? (1=меньше, 2=больше, 3=попал) 3
Ура! Я молодец!

Интересно, во что наша программа скомпилировалась?

Источник

Зачем нам знать, что такое программное обеспечение?

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

Всем привет, меня зовут Максим, эта статья попытка объяснить, что такое программирование и программное обеспечение простыми словами.

Для большинства людей процесс разработки программного обеспечения непонятен, неизвестен, и честно говоря, неинтересен — главное, чтобы программа работала.

Под программным обеспечением (ПО, программы, приложения, софт) в данной статье подразумевается ПО, имеющие пользовательский интерфейс.

Насколько важны и нужны для нас программы?

Давайте для начала посчитаем сколько программ мы используем в течение дня!

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

Смартфон вообще “ящик пандоры” с программами (приложениями): запишем минимум: (2) операционная система (Android, IOS), (3) магазин приложений, (4) веб-браузер, (5) соцсеть, (6) мессенджер, (7) камера, (8) голосовой помощник (Google, Siri, Алиса), (9) файловый менеджер, (10) приложение для видеоконференций.

Даже контакты, звонки, сообщения, клавиатура, калькулятор — это отдельные программы.

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

Завтракаем в тишине и спокойствии, — ладно включим что-нибудь для фона, если у вас не радиоточка, то телевизор, они в основном (11) смарт ТВ — т.е. тоже с программами.

Внимание: статья написана в апреле-мае 2020 в Беларуси, где не было карантина и можно свободно передвигаться — наконец то, мы самая свободная страна Европы!

Перед тем одеться проверим (12) прогноз погоды (в смартфоне точный прогноз расписан по часам и конкретно для нашего местоположения) — пора бы уже прекращать показывать прогнозы по телевизору.

Если едем на работу на машине включаем (13) навигатор и (14) любимую музыку или подкаст, книгу.

Если на общественном транспорте — (14) музыка, (15) игры, (16) видео, вебсерфинг – а ведь каждый сайт в интернете — это тоже отдельная программа. Что мы смотрим в интернете? — пару новостных сайтов (17-20).

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

На работе у нас есть компьютер, а в нем: (21) операционная система (Windows, MacOS), (22) интернет браузер, (23) мессенджер, (24) ПО веб конференции, (25-27) пакет офисных программ (текст, таблицы, презентации), (28-30) профессиональные программы (мало кто работает в одной).

Что делаем после работы? — ведем здоровую и интересную жизнь, без гаджетов! А в этом нам помогают приложения — кто-нибудь бегает без смартфона?

(31) Спорт, (32) обучение, (34) хобби, (35) увлечения — для всего есть приложения и сайты.

А для этого у нас еще есть фитнес-браслеты и смарт-часы и на них есть своя (36) операционная система и могут быть свои приложения.

У вас есть дети? — для них тоже есть приложения, программы и сайты — (37) развитие, (38) обучение, (39) развлечения.

Книга перед сном? — (40) электронная.

Мы с вами посчитали только программы с интерфейсами, а сколько еще системных программ, программ в оборудовании.

Вывод — разнообразие используемых программ в жизни человека превышает другие продукты. Мы едим куда меньше продуктов и используем куда меньше вещей, приборов, чем используем программ.

Хотел написать почему важно понимать как вообще устроен мир и объекты, которые нас окружают. Что-то типа того, что булочки не растут на деревьях, но понял, что в целом это нормально не знать — как сделать булочку, холодильник, смартфон, построить дом.

Все-таки, в эпоху урбанизации, если вы знаете, как добывают полезные ископаемые, производятся сельскохозяйственные работы, функционирует производство, проводят строительство — вы эрудированный человек, даже если вы это смотрели на National Geographic.

Ведь на самом деле мало кому нужны все эти подробные знания о том, как это устроено, в эпоху информационной перегрузки. Польза от таких знаний нужна только героям Таинственного острова и Марсианина, это факт.

Что-такое программное обеспечение?

Если по сложному — программное обеспечение — это программа или множество программ, используемых для управления компьютером, такое определение дано в Википедии, а оно взято из международного стандарта ISO.

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

Исходный код — это код, который пишет программист на каком-нибудь языке программирования — Java, Python, С, PHP и др., это так называемые высокоуровневые языки программирования, которые близки к натуральным языкам (английский и др.).

Исполняемый код — это код который, понимает виртуальная машина, контроллер, процессор и т.п., обычно появляется в результате преобразования исходного кода.

По мере преобразования (компиляции и интерпретации) исходный код преобразуется сначала в объектный код, байт-код, машинный код, микрокод.

Когда нибудь я напишу по этому вопросу подробнее, — но это не точно.

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

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

Чтобы понять разницу между инструкцией человеку и инструкцией для компьютера давайте рассмотрим одну задачу — сделать медицинскую маску.

Одну инструкцию напишем для человека, а другую для 3D принтера.

Инструкция для человека

Шаг 1. Найти видео-инструкцию как сделать маску.

Шаг 2. Посмотреть видео как сделать маску.

Шаг 3. Найти подходящие материалы или их аналоги.

Шаг 4. Сделать маску.

4 строки и 99% людей смогут сделать маску по этой инструкциию

Например, здесь несколько инструкций от 2 до 10 шагов

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

Инструкция для 3D принтера

Это файл в формате x3d, который содержит описание трехмерное описание маски, в данном случае в XML. XML это язык разметки, применяемый для передачи различных данных в виде файла. XML как язык примечателен тем, что считается и человеко-читаемым и машино-читаемым.

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

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

Давайте подведем итоги.

P.S. Это статья попытка объяснить про программирование “сверху-вниз” от пользователя, если вы хотите разобраться в программировании с целью “Войти в IT”, то вам нужен другой подход “снизу-вверх” от информатики к программам и системам, например — Гарвардский курс “CS50. Основы программирования”.

P.S. С 25 по 27 минуты про основы программирования рассказывают Билл Гейтс и Марк Цукерберг.

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

Всем привет, меня зовут Максим, эта статья попытка объяснить, что такое программирование и программное обеспечение простыми словами.

Про туалетную бумагу лучше расскажи. Доступно-простыми словами.

Зачем нам знать, что такое программное обеспечение?

А где ответ на вопрос в заголовке?

А как обстоит дело с электричеством?

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

Правила дуэли на холодном оружии

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

Числа три и девять в Скандинавской мифологии

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

Число три с большой частотой встречается в мифах, связанных с созданием мира и описании существ его населяющих:

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

• В Прорицании Вёльвы описывается, что чудовищный пёс Гарм, охраняющий вход в царство Хель, три раза издаст вой перед наступлением Рагнарёка.
• Там же написано, что боги трижды жгут Гулльвейг, и три раза она возрождается заново.
• Начало Рагнарёка ознаменуют крик трёх петухов: первый живёт в стране Асов, второй в стране великанов и третий мире мёртвых.
• Радужный мост, связывающий миры, имеет три цвета. Также у него есть три названия (Биврёст, Асбру и Гьяллар).
• У Хеймдалля, как у стража Радужного моста, есть три способности, делающие его лучшим стражем: он нуждается в меньшем количестве сна, чем птица, видит даже ночью до ста лиг, а слух его настолько острый, что он слышит, как растёт трава.
• У Одина есть три предмета могущества: копье Гунгнир, золотое кольцо Драупнир и его восьминогий скакун Слейпнир.
• У Тора есть три предмета для битвы с Великанами: молот Мьёльнир, волшебный пояс, который удваивает его силу, и пара железных рукавиц, которые позволяют ему управляться с молотом.
• У Фрейра так же есть три волшебных предмета: Корабль Скидбладнир, кабан-скакун Гуллинбурсти и меч, который может действовать самостоятельно (последний он отдал своему слуге Скримниру взамен на его помощь в
женитьбе на Герд).

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

Теперь рассмотрим число девять. Оно, хотя и в меньшем количестве, но тоже часто встречается. При этом девятка очень важна.

Что такое исполняемый код. Смотреть фото Что такое исполняемый код. Смотреть картинку Что такое исполняемый код. Картинка про Что такое исполняемый код. Фото Что такое исполняемый код

•Символ Валькнут состоит из трёх связанных треугольников, образующих девять углов
•Девять существ переживут Рагнарёк и дадут начало новому миру: Видар, Вали, Магни, Моди, Уль, Бальдр, Хёд, Лив и Ливтрасир.
Разумеется, это очень беглый и краткий обзор ОГРОМНОГО количества материала, но как я уже сказал в самом начале, изложить всё в деталях просто невозможно. Но если статья понравится, я могу написать ещё что-нибудь на эту тему.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *