Исходный текст: различия между версиями

Материал из in.wiki
Перейти к навигации Перейти к поиску
>Семён Соколов
м (Содержимое страницы заменено на «Хуй»)
>Важнов Алексей Геннадьевич
м (Правки Семён Соколов (обсуждение) откачены к версии Asp)
Строка 1: Строка 1:
Хуй
+
'''Исходный текст (исходный код)''' - это текст [[программа|программы]] до момента его [[компиляция|компиляции]] в [[машинный код]] или [[байткод]]. Пишется, как правило, на высокоуровневом языке программирования. [[драйвер|Драйверы]], а также критичные по скорости выполнения куски программы могут содержать в себе ассемблерные вставки или быть полностью написанными на [[ассемблер (язык программирования)|языке ассемблера]].
 +
 
 +
Для исследования программ, исходный код которых недоступен, часто используют [[дизассемблер]]ы - преобразователи непонятного для человека машинного кода в ассемблерный код. Лицензиями на [[Проприетарное ПО|проприетарные программы]] дизассемблирование почти всегда запрещается. Кроме того, изучение полученного таким образом ассемблерного кода обычно затруднительно (а иногда и вовсе невозможно) по следующим причинам:
 +
* Объем его во много раз превышает соответствующий объем кода на языке высокого уровня, и изучение низкоуровнего кода сложнее
 +
* Для запутывания исходного кода применяют [[обфускатор]]ы
 +
 
 +
Для защиты исходных текстов собственных программ от [[копираст]]ов лучше всего подходит лицензия [[GPL|GNU GPL]].
 +
 
 +
[[Категория:Понятия]]

Версия от 21:31, 28 декабря 2010

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

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

  • Объем его во много раз превышает соответствующий объем кода на языке высокого уровня, и изучение низкоуровнего кода сложнее
  • Для запутывания исходного кода применяют обфускаторы

Для защиты исходных текстов собственных программ от копирастов лучше всего подходит лицензия GNU GPL.