
рдпрд╣ рдХрд╣рд╛рдиреА рдПрдВрдбреНрд░реЙрдЗрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧреИрд░-рдорд╛рдирдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред рдПрдВрдбреНрд░реЙрдЗрдб рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдФрд░ рдЬрд╛рд╡рд╛ рдпрд╛ рдХреЛрдЯрд▓рд┐рди рдореЗрдВ "рд╣реИрд▓реЛ, рд╡рд░реНрд▓реНрдб" рд▓рд┐рдЦрдирд╛ рдПрдХ рдмрд╛рдд рд╣реИред рд▓реЗрдХрд┐рди рдореИрдВ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ рдХрд┐ рдХреИрд╕реЗ рдПрдХ рд╣реА рдХрд╛рд░реНрдп рдХреЛ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╣рдо рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рддреЗ рд╣реИрдВ: "рд╣реИрдмрд░" рдХреЗ рд╕рднреА рдкрд╛рдардХреЛрдВ рдХреЗ рд▓рд┐рдП - "рд╣реИрдмрд░" рдкреНрд░реЛрдореЛ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рднреА рд╕реНрдХрд┐рд▓рдмреЙрдХреНрд╕ рдХреЛрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдкрдВрдЬреАрдХрд░рдг рдХрд░рддреЗ рд╕рдордп 10,000 рд░реВрдмрд▓ рдХреА рдЫреВрдЯред
рд╕реНрдХрд┐рд▓рдмреЙрдХреНрд╕ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реИ: рдСрди-рд▓рд╛рдЗрди рд╢реИрдХреНрд╖рд┐рдХ рдкрд╛рдареНрдпрдХреНрд░рдо "рдкреНрд░реЛрдлреЗрд╢рди рдЬрд╛рд╡рд╛-рдбреЗрд╡рд▓рдкрд░" ред
рдПрдВрдбреНрд░реЙрдЗрдб рдУрдПрд╕ рдХреЗ рд╕рд╛рде рдореЗрд░рд╛ рд╕реНрдорд╛рд░реНрдЯрдлреЛрди рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ?
рдкрд╣рд▓рд╛, рдереЛрдбрд╝рд╛ рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдбред рдПрдХ рд╢рд╛рдо рдПрд░рд┐рдПрд▓рд╛ рдирд╛рдордХ рдПрдХ рдорд┐рддреНрд░ рдиреЗ рдореБрдЭреЗ рдлреЛрди рдХрд┐рдпрд╛ред рдЙрд╕рдиреЗ рдореБрдЭрд╕реЗ рдкреВрдЫрд╛: тАЬрд╕реБрдиреЛ, рдореЗрд░рд╛ рд╕реНрдорд╛рд░реНрдЯрдлреЛрди рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? рдЗрд╕рдХреЗ рдЕрдВрджрд░ рдХреНрдпрд╛ рд╣реИ? рд╡рд┐рджреНрдпреБрдд рдКрд░реНрдЬрд╛ рдФрд░ рд╕рд╛рдзрд╛рд░рдг рдЗрдХрд╛рдЗрдпрд╛рдБ рдФрд░ рд╢реВрдиреНрдп рдпрд╣ рд╕рдм рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ? "
рдореЗрд░рд╛ рджреЛрд╕реНрдд рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдПрдХ noob рдирд╣реАрдВ рд╣реИ, рдЙрд╕рдиреЗ Arduino рдкрд░ рдХрдИ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдП, рдЬрд┐рд╕рдореЗрдВ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдФрд░ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рджреЛрдиреЛрдВ рд╢рд╛рдорд┐рд▓ рдереЗред рд╢рд╛рдпрдж рдЗрд╕рд▓рд┐рдП рд╡рд╣ рдФрд░ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддреА рдереАред рдореИрдВ рд╡рд┐рд╢реНрд╡рд╡рд┐рджреНрдпрд╛рд▓рдп рдореЗрдВ рд▓рд┐рдП рдЧрдП рдХрдВрдкреНрдпреВрдЯрд░ рд╡рд┐рдЬреНрдЮрд╛рди рдкрд╛рдареНрдпрдХреНрд░рдореЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдЬреНрдЮрд╛рди рдХреА рдорджрдж рд╕реЗ рдЙрддреНрддрд░ рджреЗрдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ред
рдлрд┐рд░ рд╣рдордиреЗ рдХреБрдЫ рд╣рдлрд╝реНрддреЗ рдореЗрдВ рдПрдХ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдПрд░реЗрд▓рд╛ рдпрд╣ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддреА рдереА рдХрд┐ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХ рдмрд┐рд▓реНрдбрд┐рдВрдЧ рдмреНрд▓реЙрдХ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдпрд╛рдиреА рдЕрд░реНрдзрдЪрд╛рд▓рдХ рддрддреНрд╡, рдЬрд┐рд╕рдореЗрдВ рдЯреНрд░рд╛рдВрдЬрд┐рд╕реНрдЯрд░ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдЕрдЧрд▓рд╛, рд╣рдо рдПрдХ рдЙрдЪреНрдЪ рд╕реНрддрд░ рдкрд░ рдЧрдП: рдореИрдВрдиреЗ рдЙрд╕реЗ рджрд┐рдЦрд╛рдпрд╛ рдХрд┐ рддрд░реНрдХ рджреНрд╡рд╛рд░ рдХреИрд╕реЗ рдмрдирд╛рдП рдЬрд╛рдПрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЯреНрд░рд╛рдВрдЬрд┐рд╕реНрдЯрд░ рдХреЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрдпреЛрдЬрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирдВрдж (рддрд╛рд░реНрдХрд┐рдХ рдФрд░) рдкреНрд▓рд╕ NOR (рддрд╛рд░реНрдХрд┐рдХ OR)ред
рд╣рдордиреЗ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рддрд╛рд░реНрдХрд┐рдХ рддрддреНрд╡реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХреА, рдЙрдиреНрд╣реЗрдВ рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдпреБрдХреНрдд рдХрд┐рдпрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рджреЛ рдмрд╛рдЗрдирд░реА рдирдВрдмрд░ рдЬреЛрдбрд╝рдХрд░) рдФрд░ рдореЗрдореЛрд░реА рд╕реЗрд▓ (рдЯреНрд░рд┐рдЧрд░)ред рдЬрдм рд╕рдм рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЧрдпрд╛, рддреЛ рдЙрдиреНрд╣реЛрдВрдиреЗ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкреНрд░реЛрд╕реЗрд╕рд░ (рдХрд╛рд▓реНрдкрдирд┐рдХ) рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛, рдЬрд┐рд╕рдореЗрдВ рджреЛ рд╕рд╛рдорд╛рдиреНрдп рдЙрджреНрджреЗрд╢реНрдп рд░рдЬрд┐рд╕реНрдЯрд░ рдФрд░ рджреЛ рд╕рд░рд▓ рдирд┐рд░реНрджреЗрд╢ (рдЗрди рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛) рдереЗред рд╣рдордиреЗ рдПрдХ рд╕рд░рд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдо рднреА рд▓рд┐рдЦрд╛ рд╣реИ рдЬреЛ рдЗрди рджреЛ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рдЧреБрдгрд╛ рдХрд░рддрд╛ рд╣реИред
рд╡реИрд╕реЗ, рдпрджрд┐ рдЖрдк рдЗрд╕ рд╡рд┐рд╖рдп рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рд╕реНрдХреНрд░реИрдЪ рд╕реЗ 8-рдмрд┐рдЯ рдХрдВрдкреНрдпреВрдЯрд░ рдмрдирд╛рдиреЗ рдХреЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдкрдврд╝реЗрдВред рдпрд╣ рдмрд╣реБрдд рдореВрд▓ рдмрд╛рддреЗрдВ рд╕реЗ рд▓рдЧрднрдЧ рд╕рдм рдХреБрдЫ рд╕рдордЭрд╛рддрд╛ рд╣реИред рдХрд╛рд╢ рдореИрдВ рдЗрд╕реЗ рдкрд╣рд▓реЗ рдкрдврд╝рддрд╛!
рд╣реИрд▓реЛ рдПрдВрдбреНрд░реЙрдЗрдб!
рдЕрдзреНрдпрдпрди рдХреЗ рд╕рднреА рдЪрд░рдгреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧрд╛ рдХрд┐ рдЕрд░реАрд▓рд╛ рдХреЛ рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЬреНрдЮрд╛рди рдерд╛ рдХрд┐ рд╕реНрдорд╛рд░реНрдЯрдлреЛрди рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЙрд╕рдХрд╛ рд╕реНрдорд╛рд░реНрдЯрдлреЛрди рдЧреИрд▓реЗрдХреНрд╕реА рдПрд╕ 6 рдПрдЬ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЖрдзрд╛рд░ рдПрдЖрд░рдПрдо рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рд╣реИ (рдЬреИрд╕рд╛ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕реНрдорд╛рд░реНрдЯрдлреЛрди рдХреЗ рд╕рд╛рде)ред рд╣рдордиреЗ Android рдХреЗ рд▓рд┐рдП "рд╣реИрд▓реЛ, рд╡рд░реНрд▓реНрдб" рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓рд┐рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдЕрд╕реЗрдВрдмрд▓реА рднрд╛рд╖рд╛ рдореЗрдВред
.text .globl _start _start: mov %r0, $1 // file descriptor number 1 (stdout) ldr %r1, =message mov %r2, $message_len mov %r7, $4 // syscall 4 (write) swi $0 mov %r0, $0 // exit status 0 (ok) mov %r7, $1 // syscall 1 (exit) swi $0 .data message: .ascii "Hello, World\n" message_len = . - message
рдпрджрд┐ рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рдХреЛрдбрд╛рдВрддрд░рдХ рдХреЛрдб рдХрд╛ рд╕рд╛рдордирд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдпрд╣ рдмреНрд▓реЙрдХ рдЖрдкрдХреЛ рдбрд░рд╛ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдареАрдХ рд╣реИ, рдЪрд▓реЛ рдПрдХ рд╕рд╛рде рдХреЛрдб рдкрд╛рд░реНрд╕ рдХрд░рддреЗ рд╣реИрдВред
рдЗрд╕рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рджреЛ рднрд╛рдЧ рд╣реИрдВред рдкрд╣рд▓рд╛ рдорд╢реАрди рдХреЛрдб рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдкрд╛рда рд╣реИ, рдФрд░ рджреВрд╕рд░рд╛ рдЪрд░, рд▓рд╛рдЗрдиреЗрдВ рдФрд░ рдЕрдиреНрдп рдЬрд╛рдирдХрд╛рд░реА (рд▓рд╛рдЗрди 15 рд╕реЗ рд╢реБрд░реВ) рд╣реИред .Text рдЦрдВрдб рдЖрдорддреМрд░ рдкрд░ рдХреЗрд╡рд▓-рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ, рдФрд░ .data рднреА рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп рд╣реИред
рдкрдВрдХреНрддрд┐ 2 рдореЗрдВ, рд╣рдо _start рдирд╛рдордХ рдПрдХ рд╡реИрд╢реНрд╡рд┐рдХ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рдЖрд╡реЗрджрди рдХреЗ рд▓рд┐рдП рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рд╣реИред рдУрдПрд╕ рдЗрд╕ рдмрд┐рдВрджреБ рд╕реЗ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИред рдлрд╝рдВрдХреНрд╢рди рдкрд░рд┐рднрд╛рд╖рд╛ рдкрдВрдХреНрддрд┐ 4 рдореЗрдВ рдШреЛрд╖рд┐рдд рдХреА рдЧрдИ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдлрд╝рдВрдХреНрд╢рди рджреЛ рдФрд░ рдЪреАрдЬреЗрдВ рдХрд░рддрд╛ рд╣реИред рд▓рд╛рдЗрдиреЛрдВ 5-9 рдореЗрдВ, рд╕рдВрджреЗрд╢ рд╕реНрдХреНрд░реАрди рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, 11-11 рд▓рд╛рдЗрдиреЛрдВ рдореЗрдВ, рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдк 11-11 рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ, рддреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╣рдорд╛рд░реА "рд╣реИрд▓реЛ, рд╡рд░реНрд▓реНрдб" рд▓рд╛рдЗрди рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓ рдЬрд╛рдПрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЖрдЙрдЯрдкреБрдЯ рд╕рд╣реА рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрдЧрд╛ред 11-13 рдХреА рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рдмрд┐рдирд╛, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдПрдХ рдЕрдорд╛рдиреНрдп рдирд┐рд░реНрджреЗрд╢ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдЧрд╛ред
рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд┐рд╕реНрдЯрдо рдлрд╝рдВрдХреНрд╢рди "рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд┐рдВрдЯрд┐рдВрдЧ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ, рд╣рдо рд░рд╛рдЗрдЯ () рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВред рдЬрдм рд╣рдо рдкреНрд░реЛрд╕реЗрд╕рд░ 4 рдореЗрдВ рдорд╛рди r7 (рдкрдВрдХреНрддрд┐ 8) рдирд╛рдо рд╕реЗ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд╣рдо рдЗрд╕рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдмрд╛рдж, swi $ = 0 рдирд┐рд░реНрджреЗрд╢ (рд▓рд╛рдЗрди 9) рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ рд╕реЗ рд╕реАрдзреЗ рд╕рдВрдХреНрд░рдордг рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдПрдВрдбреНрд░реЙрдЗрдб рдХрд╛ рдЖрдзрд╛рд░ рд╣реИред
рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдХреЗ рд▓рд┐рдП рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ, рд╡реЗ рдЕрдиреНрдп рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░реЗрд╖рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, r0 рдЙрд╕ рдлрд╛рдЗрд▓ рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдореЗрдВ рдкреНрд░рд┐рдВрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдордиреЗ рдорд╛рди 1 рдХреЛ рд╡рд╣рд╛рдВ рд░рдЦрд╛ (рдкрдВрдХреНрддрд┐ 5), рдорд╛рдирдХ рдЖрдЙрдЯрдкреБрдЯ (рд╕реНрдЯрдбрдЖрдЙрдЯ), рдпрд╛рдиреА рд╕реНрдХреНрд░реАрди рдкрд░ рдЖрдЙрдЯрдкреБрдЯ рдХрд╛ рд╕рдВрдХреЗрддред
r1 рдЙрд╕ рдбреЗрдЯрд╛ рдХреЗ рдореЗрдореЛрд░реА рдПрдбреНрд░реЗрд╕ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╕реНрдЯреНрд░рд┐рдВрдЧ "рд╣реИрд▓реЛ, рд╡рд░реНрд▓реНрдб" (рд▓рд╛рдЗрди 6) рдХреЗ рдкрддреЗ рдХреЛ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд░рдЬрд┐рд╕реНрдЯрд░ r2 рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдХрд┐рддрдиреЗ рдмрд╛рдЗрдЯреНрд╕ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ, рдпрд╣ рдореИрд╕реЗрдЬ_рд▓реЗрди (рд▓рд╛рдЗрди 7) рдкрд░ рд╕реЗрдЯ рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд╛рдЗрди 18 рдкрд░ рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИ: рдбреЙрдЯ рдкреНрд░рддреАрдХ рд╡рд░реНрддрдорд╛рди рдореЗрдореЛрд░реА рдкрддреЗ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдХрд╛рд░рдг рд╕реЗред - рд╕рдВрджреЗрд╢ рд╡рд░реНрддрдорд╛рди рд╕реНрдореГрддрд┐ рдкрддреЗ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рд╕рдВрджреЗрд╢ рд╕рдВрджреЗрд╢ рдХреЛ рд╢реВрдиреНрдп рд╕реЗред рдЦреИрд░, рдЪреВрдВрдХрд┐ рд╣рдо рд╕рдВрджреЗрд╢ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж message_len рдХреА рдШреЛрд╖рдгрд╛ рдХрд░рддреЗ рд╣реИрдВ, рдпрд╣ рд╕рдм рд╕рдВрджреЗрд╢ рдХреА рд▓рдВрдмрд╛рдИ рдХреЗ рд░реВрдк рдореЗрдВ рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИред
рдпрджрд┐ рдЖрдк C рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд╛рдЗрдиреЛрдВ рдХреЛ 5-9 рдХреЗ рд▓рд┐рдП рдХреЛрдб рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд┐рд▓рддреЗ рд╣реИрдВ:
#define message "Hello, World\n" write(1, message, strlen(message));
рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рд╢рдЯ рдбрд╛рдЙрди рдХрд░рдирд╛ рдереЛрдбрд╝рд╛ рдЖрд╕рд╛рди рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдмрд╕ рдПрдЧреНрдЬрд┐рдЯ рдХреЛрдб рдХреЛ рд░рдЬрд┐рд╕реНрдЯрд░ r0 (рд▓рд╛рдЗрди 11) рдореЗрдВ рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рд╣рдо рд╡реИрд▓реНрдпреВ 1 рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рдЖрд░ 7 (рд▓рд╛рдЗрди 12) рд╕реЗ рдПрдЧреНрдЬрд┐рдЯ () рд╕рд┐рд╕реНрдЯрдо рдлрдВрдХреНрд╢рди рдХреЙрд▓ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдлрд┐рд░ рдХрд░реНрдиреЗрд▓ рдХреЛ рдлрд┐рд░ рд╕реЗ рдХреЙрд▓ рдХрд░реЗрдВ (рд▓рд╛рдЗрди 13)ред
рдПрдВрдбреНрд░реЙрдЗрдб рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдХреА рдкреВрд░реА рд╕реВрдЪреА рдФрд░ рдЙрдирдХреЗ рдирдВрдмрд░
рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕реНрд░реЛрдд
рдХреЛрдб рдореЗрдВ рдкрд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рд▓реЗрдЦрди рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
() рдФрд░
рдирд┐рдХрд╛рд╕ () рднреА рд╣реИ рдЬреЛ рд╕рдВрдмрдВрдзрд┐рдд рд╕рд┐рд╕реНрдЯрдо рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВред
рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдПрдХ рд╕рд╛рде рд░рдЦрд╛
рд╣рдорд╛рд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ Android NDK (рдореВрд▓ рд╡рд┐рдХрд╛рд╕ рдХрд┐рдЯ) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдЗрд╕рдореЗрдВ рдПрдЖрд░рдПрдо рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рд▓рд┐рдП рдХрдВрдкрд╛рдЗрд▓рд░реЛрдВ рдФрд░ рдмрд┐рд▓реНрдб рдЯреВрд▓реНрд╕ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИред рдЖрдк рдЗрд╕реЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рд╛рдЗрдЯ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдВрдбреНрд░реЙрдЗрдб рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗред

NDK рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдЖрд░реНрдо-рд▓рд╛рдЗрдирдХреНрд╕-рдПрдВрдбреНрд░реЙрдЗрдбрдмреА-рдлрд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд╛рд╣рд┐рдП, рдпрд╣ рдПрдЖрд░рдПрдо рдХреЗ рд▓рд┐рдП рдХреЛрдбрд╛рдВрддрд░рдХ рд╣реИред рдпрджрд┐ рдЖрдк рдПрдВрдбреНрд░реЙрдЗрдб рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕реЗ рдПрдВрдбреНрд░реЙрдЗрдб рдПрд╕рдбреАрдХреЗ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рджреЗрдЦреЗрдВред рдЖрдорддреМрд░ рдкрд░ рдЗрд╕рдХреА рд▓реЛрдХреЗрд╢рди рд╣реЛрддреА рд╣реИ
ndk- рдмрдВрдбрд▓ \ toolchains \ arm-linux-androideabi-4.9 \ prebuilt \ windows-x86_64 \ binредрдХреЛрдбрд╛рдВрддрд░рдХ рдорд┐рд▓ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╣реЗрд▓реНрд▓реЛ.рдПрд╕ рдирд╛рдордХ рдлрд╛рдЗрд▓ рдореЗрдВ рдЬреЛ рд▓рд┐рдЦрд╛ рд╣реИ рдЙрд╕реЗ рд╕реЗрд╡ рдХрд░реЗрдВ, рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рдорд╢реАрди рдирдВрдмрд░ рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрди рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ:
arm-linux-androideabi-as -o hello.o рд╣реИрд▓реЛрдпрд╣ рдСрдкрд░реЗрд╢рди рдПрдХ ELF рдСрдмреНрдЬреЗрдХреНрдЯ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ hello.o рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕реЗ рдмрд╛рдЗрдирд░реА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЖрдкрдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд╕рдХрддреА рд╣реИ, рд▓рд┐рдВрдХрд░ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВ:
arm-linux-androideabi-ld -o рд╣реЗрд▓реЛ рд╣реЗрд▓реЛ.рдУрдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реИрд▓реЛ рдлрд╝рд╛рдЗрд▓ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╣реИ рдЬреЛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИред
рдЕрдкрдиреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ
рдПрдВрдбреНрд░реЙрдЗрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЖрдорддреМрд░ рдкрд░ .apk рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдХрд╛рд░ рдХреА рд╕рдВрдкреАрдбрд╝рд┐рдд рдлрд╝рд╛рдЗрд▓ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЬрд╛рд╡рд╛ рдХрдХреНрд╖рд╛рдПрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ (рд╣рд╛рдВ, рдЖрдк рд╕реА / рд╕реА ++ рдХреЗ рд╕рд╛рде рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬрд╛рд╡рд╛ рдХреЛ рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП)ред
рдЖрд╡реЗрджрди рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдПрдбреАрдмреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд┐рд╕рдиреЗ рд╣рдореЗрдВ рдЗрд╕реЗ рдЕрдкрдиреЗ рдПрдВрдбреНрд░реЙрдЗрдб рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдЕрд╕реНрдерд╛рдпреА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдХреЙрдкреА рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреА рдереАред рдЙрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдФрд░ рдкрд░рд┐рдгрд╛рдо рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП adb рд╢реЗрд▓ рд▓реЙрдиреНрдЪ рдХрд░рддреЗ рд╣реИрдВ:
adb рдкреБрд╢ рд╣реЗрд▓реЛ / рдбрд╛рдЯрд╛ / рд▓реЛрдХрд▓ / tmp / рд╣реИрд▓реЛ
рдЕрджрдм рд╢реЗрд▓ рдЪрд╛рдореЛрдб + x / рдбреЗрдЯрд╛ / рд╕реНрдерд╛рдиреАрдп / tmp / рд╣реИрд▓реЛрдФрд░ рдЕрдВрдд рдореЗрдВ, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЪрд▓рд╛рдПрдБ:
adb рдЦреЛрд▓ / рдбреЗрдЯрд╛ / рд╕реНрдерд╛рдиреАрдп / tmp / рд╣реИрд▓реЛрдЖрдк рдХреНрдпрд╛ рд▓рд┐рдЦрддреЗ рд╣реИрдВ?
рдЕрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдорд╛рд╣реМрд▓ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдЕрд░реАрд▓рд╛ рдХреЗ рдкрд╛рд╕ рдерд╛ред рдЙрд╕рдиреЗ рдХрдИ рджрд┐рди рдПрдЖрд░рдПрдо рдЕрд╕реЗрдВрдмрд▓рд░ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдореЗрдВ рдмрд┐рддрд╛рдП, рдлрд┐рд░ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕рд╛рде рдЖрдпрд╛ - рдпрд╣ рдЦреЗрд▓ рд╕реНрд╡реЗрди рдмреВрдо (рдореВрд▓ рд░реВрдк рд╕реЗ рдЗрдЬрд╝рд░рд╛рдЗрд▓ рд╕реЗ рдлрд╝рд┐рдЬрд╝ рдмрдЬрд╝ рдХреА рдПрдХ рднрд┐рдиреНрдирддрд╛) рд╣реИред рдЦрд┐рд▓рд╛рдбрд╝реА рдмрд╛рд░реА-рдмрд╛рд░реА рд╕реЗ рдЧрд┐рдирддреЗ рд╣реИрдВ рдФрд░ рд╣рд░ рдмрд╛рд░ рд╕рдВрдЦреНрдпрд╛ 7 рд╕реЗ рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реЛрддреА рд╣реИ рдпрд╛ рд╕рдВрдЦреНрдпрд╛ 7 рд╣реЛрддреА рд╣реИ, рдЙрдиреНрд╣реЗрдВ "рдмреВрдо" (рдЗрд╕рд▓рд┐рдП рдЦреЗрд▓ рдХрд╛ рдирд╛рдо) рдХрд╣рдирд╛ рд╣реЛрдЧрд╛ред
рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдЦреЗрд▓ рдХрд╛рд░реНрдпрдХреНрд░рдо рдЗрддрдирд╛ рдЖрд╕рд╛рди рдХрд╛рдо рдирд╣реАрдВ рд╣реИред рдПрд░рд┐рд▓рд╛ рдиреЗ рдПрдХ рдкреВрд░реА рд╡рд┐рдзрд┐ рд▓рд┐рдЦреА рдЬреЛ рдПрдХ рд╕рдордп рдореЗрдВ рд╕рдВрдЦреНрдпрд╛рдУрдВ, рдПрдХ рдЕрдВрдХ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреА рд╣реИред рдЪреВрдВрдХрд┐ рдЙрд╕рдиреЗ рдорд╛рдирдХ рд╕реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдмреБрд▓рд╛рдП рдмрд┐рдирд╛ рдХреЛрдбрд╛рдВрддрд░рдХ рдореЗрдВ рд╕рдм рдХреБрдЫ рд▓рд┐рдЦрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдХрдИ рджрд┐рди рд▓рдЧ рдЧрдПред
Adnroid рдХреЗ рд▓рд┐рдП рдкрд╣рд▓рд╛ Ariella рдХрд╛рд░реНрдпрдХреНрд░рдо
рдпрд╣рд╛рдБ рдЙрдкрд▓рдмреНрдз
рд╣реИ ред рд╡реИрд╕реЗ, рдЖрд╡реЗрджрди рдореЗрдВ рдХреБрдЫ рдХреЛрдб рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рд┐рдмреНрд░реВ рд╢рдмреНрдж рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, _sifra_ahrona)ред
рдЕрд╕реЗрдВрдмрд▓рд░ рдореЗрдВ рдПрдВрдбреНрд░реЙрдЗрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓рд┐рдЦрдирд╛ рдПрдЖрд░рдПрдо рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХреЛ рдмреЗрд╣рддрд░ рддрд░реАрдХреЗ рд╕реЗ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рд╣реИ, рдФрд░ рдЧреИрдЬреЗрдЯ рдХреЗ рдЖрдВрддрд░рд┐рдХ рд░рд╕реЛрдИ рдХреЛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рд╕реЗ рдЖрдк рджреИрдирд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдмрд╛рд░реАрдХреА рд╕реЗ рдХрд░реЗрдВ рдФрд░ рдЕрдкрдиреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдЫреЛрдЯрд╛ рдЕрд╕реЗрдВрдмрд▓рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдпрд╣ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЦреЗрд▓ рдпрд╛ рдХреБрдЫ рдФрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рд╕реНрдХрд┐рд▓рдмреЙрдХреНрд╕ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реИ: