Style/ru: Difference between revisions
Jump to navigation
Jump to search
Pathoswithin (talk | contribs) No edit summary |
Pathoswithin (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
== Правила SVN для ядра == | == Правила SVN для ядра == | ||
* Табуляции запрещены. | * Табуляции запрещены. | ||
* Метки должны идти в отдельной строке от кода (но могут быть в одной строке с данными). | |||
* Строка начинается с восьми пробелов. Далее идёт имя команды или макроса. Если имя короче восьми символов, то оно дополняется пробелами до восьми символов; если нет, то далее идёт один пробел. Потом опционально идут аргументы, разделённые запятой и одним пробелом после неё. | * Строка начинается с восьми пробелов. Далее идёт имя команды или макроса. Если имя короче восьми символов, то оно дополняется пробелами до восьми символов; если нет, то далее идёт один пробел. Потом опционально идут аргументы, разделённые запятой и одним пробелом после неё. | ||
* Префиксы lock/rep[z|e|nz|ne] считаются логическим целым с последующей командой и отделяются одним пробелом. | * Префиксы lock/rep[z|e|nz|ne] считаются логическим целым с последующей командой и отделяются одним пробелом. |
Revision as of 00:06, 11 February 2016
Правила SVN для ядра
- Табуляции запрещены.
- Метки должны идти в отдельной строке от кода (но могут быть в одной строке с данными).
- Строка начинается с восьми пробелов. Далее идёт имя команды или макроса. Если имя короче восьми символов, то оно дополняется пробелами до восьми символов; если нет, то далее идёт один пробел. Потом опционально идут аргументы, разделённые запятой и одним пробелом после неё.
- Префиксы lock/rep[z|e|nz|ne] считаются логическим целым с последующей командой и отделяются одним пробелом.
- Все файлы с кодом должны обладать служебным свойством 'svn:eol-style' со значением 'native'.
- Все текстовые файлы должны быть в кодировке UTF-8 без BOM.
Рекомендации
- Переменные должны иметь либо исчерпывающее название без сокращений, либо комментарий.
- То же самое желательно применять и к меткам, а так же располагать их в отдельной строке без отступа.
- При написании процедур необходимо описывать её назначение, входные и выходные параметры, изменяемые регистры:
<syntaxhighlight lang="asm">
- doing job
subroutine:
- in
- eax = some data
- ebx -> some pointer
- out
- eax = result data
- destroys ebx</syntaxhighlight>