рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░!
рдореИрдВ рд╡реНрдпрд╡рд╕рд╛рдп рд╕реЗ рдЬрд╛рд╡рд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╣реВрдВред рдкрд┐рдЫрд▓реЗ рдорд╣реАрдиреЛрдВ рдХреЗ рдХрд╛рдо рдиреЗ рдореБрдЭреЗ рдПрдВрдбреНрд░реЙрдЗрдб рдПрдирдбреАрдХреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╛рд╕ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдФрд░, рддрджрдиреБрд╕рд╛рд░, рд╕реА рдореЗрдВ рджреЗрд╢реА рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рд▓рд┐рдЦрдирд╛ред рдлрд┐рд░ рдореБрдЭреЗ рд▓рд┐рдирдХреНрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред рдХрдИ рдПрдЖрд░рдПрдо рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдирд╣реАрдВ рдереЗ рдФрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд▓реЛрдб рдХрд░рддреЗ рдереЗред рдкрд╣рд▓реЗ, рдореИрдВрдиреЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдХреЛрдбрд╛рдВрддрд░рдХ рдореЗрдВ рдХрд╛рд░реНрдпрдХреНрд░рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдкрд╣рд▓реЗ рддреЛ рдЗрд╕ рднрд╛рд╖рд╛ рдХреЛ рд╕реАрдЦрдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдерд╛, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдореИрдВрдиреЗ рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдпрд╣ рд▓реЗрдЦ рд▓рд┐рдЦрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдмреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╢реБрд░реБрдЖрдд рд╕реЗ рд╢реБрд░реБрдЖрдд рддрдХред рдореИрдВ рдЙрди рдореВрд▓ рдмрд╛рддреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ рдЬреЛ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рд╕реАрдЦреЗ рд╣реИрдВ, рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдХреЛ рдЗрд╕рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реЛрдЧреАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рдкреЗрд╢реЗрд╡рд░реЛрдВ рд╕реЗ рд░рдЪрдирд╛рддреНрдордХ рдЖрд▓реЛрдЪрдирд╛ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред
рдкрд░рд┐рдЪрдп
рддреЛ, рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рдЬрд╛рдиреЗрдВ рдХрд┐ рдПрдЖрд░рдПрдо рдХреНрдпрд╛ рд╣реИред рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░рд┐рднрд╛рд╖рд╛ рджреЗрддрд╛ рд╣реИ:
рдПрдЖрд░рдПрдо рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ (рдПрдбрд╡рд╛рдВрд╕реНрдб рдЖрд░рдЖрдИрдПрд╕рд╕реА рдорд╢реАрди, рдПрдХреЛрд░реНрди рдЖрд░рдЖрдИрдПрд╕рд╕реА рдорд╢реАрди, рдПрдбрд╡рд╛рдВрд╕реНрдб рдЖрд░рдЖрдИрдПрд╕рд╕реА рдорд╢реАрди) - рдПрдЖрд░рдПрдо рд▓рд┐рдорд┐рдЯреЗрдб рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рд▓рд╛рдЗрд╕реЗрдВрд╕ рдкреНрд░рд╛рдкреНрдд 32-рдмрд┐рдЯ рдФрд░ 64-рдмрд┐рдЯ рдорд╛рдЗрдХреНрд░реЛрдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛрд░ рдХрд╛ рдкрд░рд┐рд╡рд╛рд░ред рдХрдВрдкрдиреА рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЙрдирдХреЗ рд▓рд┐рдП рдЧреБрдард▓реА рдФрд░ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рд▓рдЧреА рд╣реБрдИ рд╣реИ (рдХрдВрдкрд╛рдЗрд▓рд░, рдбрд┐рдмрдЧрд┐рдВрдЧ рдЙрдкрдХрд░рдг, рдЖрджрд┐), рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛рдУрдВ рдХреЛ рд▓рд╛рдЗрд╕реЗрдВрд╕рд┐рдВрдЧ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдкрд░ рдкреИрд╕рд╛ рдХрдорд╛ рд░рд╣реА рд╣реИред
рдпрджрд┐ рдХрд┐рд╕реА рдХреЛ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЕрдм рдЬреНрдпрд╛рджрд╛рддрд░ рдореЛрдмрд╛рдЗрд▓ рдбрд┐рд╡рд╛рдЗрд╕ рдФрд░ рдЯреИрдмрд▓реЗрдЯ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЗрд╕ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдП рдЧрдП рд╣реИрдВред рдЗрд╕ рдкрд░рд┐рд╡рд╛рд░ рдХрд╛ рдореБрдЦреНрдп рд▓рд╛рдн рдЗрд╕рдХреА рдХрдо рдмрд┐рдЬрд▓реА рдХреА рдЦрдкрдд рд╣реИ, рдпрд╣реА рд╡рдЬрд╣ рд╣реИ рдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдХреНрд╕рд░ рд╡рд┐рднрд┐рдиреНрди рдПрдореНрдмреЗрдбреЗрдб рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕рдордп рдХреЗ рд╕рд╛рде рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рд╡рд┐рдХрд╕рд┐рдд рд╣реБрдИ рдФрд░ ARMv7 рд╕реЗ рд╢реБрд░реВ рд╣реЛрдХрд░ 3 рдкреНрд░реЛрдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛: 'рдП' (рдПрдкреНрд▓рд┐рдХреЗрд╢рди) - рдПрдкреНрд▓реАрдХреЗрд╢рди, 'рдЖрд░' (рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп) - рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдореЗрдВ, 'рдПрдо' (рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░) - рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ред рдЖрдк рдЗрд╕ рддрдХрдиреАрдХ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдЗрддрд┐рд╣рд╛рд╕ рдФрд░ рдЕрдиреНрдп рджрд┐рд▓рдЪрд╕реНрдк рдбреЗрдЯрд╛ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ рдпрд╛ рдЧреВрдЧрд▓ рдкрд░ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред рдПрдЖрд░рдПрдо рдСрдкрд░реЗрд╢рди рдХреЗ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ (рдердореНрдм рдФрд░ рдПрдЖрд░рдПрдо рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдердореНрдм -2 рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╕рд╛рдордиреЗ рдЖрдпрд╛ рд╣реИ, рдЬреЛ рдПрдЖрд░рдПрдо рдФрд░ рдердореНрдм рдХрд╛ рдорд┐рд╢реНрд░рдг рд╣реИ)ред рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рд╣рдо рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдПрдЖрд░рдПрдо рдореЛрдб рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ, рдЬрд┐рд╕рдореЗрдВ 32-рдмрд┐рдЯ рдЕрдиреБрджреЗрд╢ рд╕реЗрдЯ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдкреНрд░рддреНрдпреЗрдХ рдПрдЖрд░рдПрдо рдкреНрд░реЛрд╕реЗрд╕рд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмреНрд▓реЙрдХреЛрдВ рд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:
- 37 рд░рдЬрд┐рд╕реНрдЯрд░ (рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХреЗрд╡рд▓ 17 рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣реЗ рд╣реИрдВ)
- рдЕрдВрдХрдЧрдгрд┐рдд-рддрд╛рд░реНрдХрд┐рдХ рдЙрдкрдХрд░рдг (ALU) - рдЕрдВрдХрдЧрдгрд┐рдд рдФрд░ рддрд╛рд░реНрдХрд┐рдХ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ
- рдмреИрд░рд▓ рд╢рд┐рдлреНрдЯрд░ - рдПрдХ рдбрд┐рд╡рд╛рдЗрд╕ рдЬрд┐рд╕реЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдмрд┐рдЯреНрд╕ рджреНрд╡рд╛рд░рд╛ рдбреЗрдЯрд╛ рдмреНрд▓реЙрдХ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
- CP15 - ARM рдХреЛрдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реА рдПрдХ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдгрд╛рд▓реА
- рдирд┐рд░реНрджреЗрд╢ рдбрд┐рдХреЛрдбрд░ - рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рд╕реВрдХреНрд╖реНрдо-рд╕рдВрдЪрд╛рд▓рди рдХреЗ рдЕрдиреБрдХреНрд░рдо рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ
рдпреЗ рдПрдЖрд░рдПрдо рдХреЗ рд╕рднреА рдШрдЯрдХ рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдЧрд╣рд░рд╛ рд╣реЛрдирд╛ рдЗрд╕ рд▓реЗрдЦ рдХреЗ рд╡рд┐рд╖рдп рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред
рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди
рдПрдЖрд░рдПрдо рдкреНрд░реЛрд╕реЗрд╕рд░ рдПрдХ 3-рдЪрд░рдг рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ (рдПрдЖрд░рдПрдо 8 рд╕реЗ рд╢реБрд░реВ рд╣реЛрдХрд░, 5-рдЪрд░рдг рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛)ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ ARM7TDMI рдкреНрд░реЛрд╕реЗрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдкреНрд░рддреНрдпреЗрдХ рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдореЗрдВ рддреАрди рдЪрд░рдг рд╣реЛрддреЗ рд╣реИрдВ:
1. рдирдореВрдирд╛ рдЪрд░рдг (рдПрдл)
рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рдирд┐рд░реНрджреЗрд╢ рд░реИрдо рд╕реЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рддрдХ рдЖрддреЗ рд╣реИрдВред
2. рдбрд┐рдХреЛрдбрд┐рдВрдЧ рд╕реНрдЯреЗрдк (D)
рдирд┐рд░реНрджреЗрд╢ рдбрд┐рдХреЛрдб рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдЙрдирдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ рдкрд╣рдЪрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред
3. рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЕрд╡рд╕реНрдерд╛ (E)
рдбреЗрдЯрд╛ рдХреЛ ALU рдореЗрдВ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдкрд░рд┐рдгрд╛рдореА рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд░рдЬрд┐рд╕реНрдЯрд░ рдкрд░ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп, рдЖрдкрдХреЛ рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдРрд╕реЗ рдирд┐рд░реНрджреЗрд╢ рд╣реИрдВ рдЬреЛ рдХрдИ рдирд┐рд╖реНрдкрд╛рджрди рдЪрдХреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд▓реЛрдб (LDR) рдпрд╛ рд╕реНрдЯреЛрд░ред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдирд┐рд╖реНрдкрд╛рджрди рдЪрд░рдг (рдИ) рдЪрд░рдгреЛрдВ (рдИ 1, рдИ 2, рдИ 3 ...) рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реИред
рд╕рд╢рд░реНрдд рдирд┐рд╖реНрдкрд╛рджрди
рдПрдЖрд░рдПрдо рдЕрд╕реЗрдВрдмрд▓рд░ рдХреЗ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╕рд╢рд░реНрдд рдирд┐рд╖реНрдкрд╛рджрди рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдирд┐рд░реНрджреЗрд╢ рдХреЛ рд╕рд╢рд░реНрдд рд░реВрдк рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдирд╛рдо рдореЗрдВ рдкреНрд░рддреНрдпрдп рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдорд╛рдкрджрдВрдбреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХреА рдЬрд╛рддреА рд╣реИред рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ рд╢рд░реНрдд рдХреЛ рдкреВрд░рд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдирд┐рд░реНрджреЗрд╢ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рддреНрдпрдп:
рдПрдордЖрдИ рдПрдХ рдирдХрд╛рд░рд╛рддреНрдордХ рд╕рдВрдЦреНрдпрд╛ рд╣реИ
рдкреАрдПрд▓ - рд╕рдХрд╛рд░рд╛рддреНрдордХ рдпрд╛ рд╢реВрдиреНрдп
AL - рд╣рдореЗрд╢рд╛ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВ
рд╕рд╢рд░реНрдд рдирд┐рд╖реНрдкрд╛рджрди рдкреНрд░рддреНрдпрдп рдмрд╣реБрдд рдмрдбрд╝рд╛ рд╣реИред рдмрд╛рдХреА рд╕рднреА рдкреНрд░рддреНрдпрдп рдФрд░ рдЙрджрд╛рд╣рд░рдг рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬ рдореЗрдВ рдкрдврд╝реЗ рдЧрдП рд╣реИрдВ:
рдПрдЖрд░рдПрдо рдкреНрд░рд▓реЗрдЦрдирдФрд░ рдЕрдм рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реИ ...
рдПрдЖрд░рдПрдо рдЕрд╕реЗрдВрдмрд▓рд░ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореВрд▓ рдмрд╛рддреЗрдВ
рдЬреЛ рд▓реЛрдЧ рдХреЛрдбрд╛рдВрддрд░рдХ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рдереЗ рд╡реЗ рдЗрд╕ рдмрд┐рдВрджреБ рдХреЛ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдмрд╛рдХреА рд╕рднреА рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЗрд╕ рднрд╛рд╖рд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдореВрд▓ рдмрд╛рддреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рдкреНрд░рддреНрдпреЗрдХ рдХреЛрдбрд╛рдВрддрд░рдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдирд┐рд░реНрджреЗрд╢ рд╣реЛрддреЗ рд╣реИрдВред рдирд┐рд░реНрджреЗрд╢ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:
{рд▓реЗрдмрд▓} {рдирд┐рд░реНрджреЗрд╢ | рдСрдкрд░реЗрдВрдбреНрд╕} {@ рдЯрд┐рдкреНрдкрдгреА}
рд▓реЗрдмрд▓ рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИред рдирд┐рд░реНрджреЗрд╢ рд╕реАрдзреЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдЬреНрдЮрд╛рди рд╣реИред рдмреБрдирд┐рдпрд╛рджреА рдирд┐рд░реНрджреЗрд╢реЛрдВ рдФрд░ рдЙрдирдХреЗ рдЙрдкрдпреЛрдЧ рдкрд░ рдмрд╛рдж рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреАред рд╕рдВрдЪрд╛рд▓рди - рд╕реНрдерд┐рд░рд╛рдВрдХ, рдкрддреЗ, рд░рд╛рдо рдореЗрдВ рдкрддреЗ рджрд░реНрдЬ рдХрд░реЗрдВред рдЯрд┐рдкреНрдкрдгреА рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИ рдЬреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдирд╛рдо рдкрдВрдЬреАрдХреГрдд рдХрд░реЗрдВ
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд░рдЬрд┐рд╕реНрдЯрд░ рдирд╛рдореЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ:
1.r0-R15
2.a1-рдП 4
3.v1-v8 (рдЪрд░ рд░рдЬрд┐рд╕реНрдЯрд░, r4 рд╕реЗ r11)
4. рдПрд╕рдмреА рдФрд░ рдПрд╕рдмреА (рд╕реНрдерд┐рд░ рд░рдЬрд┐рд╕реНрдЯрд░, рдЖрд░ 9)
5. рдПрд╕рдПрд▓ рдФрд░ рдПрд╕рдПрд▓ (рдЖрд░ 10)
6. рдПрдлрдкреА рдФрд░ рдПрдлрдкреА (рдЖрд░ 11)
7.рдЖрдИрдкреА рдФрд░ рдЖрдИрдкреА (рдЖрд░ 12)
8. рдПрд╕рдкреА рдФрд░ рдПрд╕рдкреА (рдЖрд░ 13)
9. рдПрд▓рдЖрд░ рдФрд░ рдПрд▓рдЖрд░ (рдЖрд░ 14)
10. рдкреАрд╕реА рдФрд░ рдкреАрд╕реА (рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХрд╛рдЙрдВрдЯрд░, рдЖрд░ 15)ред
рдЪрд░ рдФрд░ рд▓рд╛рдЧрдд
рдПрдЖрд░рдПрдо рдЕрд╕реЗрдВрдмрд▓рд░ рдореЗрдВ, рдХрд┐рд╕реА рднреА (рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ) рдЕрдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХреА рддрд░рд╣, рдЪрд░ рдФрд░ рд╕реНрдерд┐рд░рд╛рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрдиреНрд╣реЗрдВ рдирд┐рдореНрди рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
- рд╕рдВрдЦреНрдпрд╛рддреНрдордХ
- рдкрд╣реЗрд▓реА
- рддрд╛рд░
рдиреНрдпреВрдореЗрд░рд┐рдХ рд╡реИрд░рд┐рдПрдмрд▓реНрд╕ рдХреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
рдПрдХ SETA 100; рдПрдХ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдЪрд░ "a" 100 рдХреЗ рдорд╛рди рд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЪрд░:
рдЕрдиреБрдЪрд┐рдд рдПрд╕рдИрдЯреАрдПрд╕ "рд╢рд╛рдмреНрджрд┐рдХ"; рдПрдХ рдЕрдиреБрдЪрд┐рдд рдЪрд░ "рд╢рд╛рдмреНрджрд┐рдХ" рдХреЗ рдореВрд▓реНрдп рдХреЗ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЪреЗрддрд╛рд╡рдиреА! рдЪрд░ рдХрд╛ рдорд╛рди 5120 рд╡рд░реНрдгреЛрдВ рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ред
рдмреВрд▓рд┐рдпрди рдЪрд░ рдХреНрд░рдорд╢рдГ TRUE рдФрд░ FALSE рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдПрдЖрд░рдПрдо рдХреЛрдбрд╛рдВрддрд░рдХ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдЙрджрд╛рд╣рд░рдг
рдЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ, рдореИрдВрдиреЗ рдЙрди рдмреБрдирд┐рдпрд╛рджреА рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдПрдХрддреНрд░ рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдЖрдЧреЗ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдВрдЧреЗ (рд╕рдмрд╕реЗ рдмреБрдирд┐рдпрд╛рджреА рдЪрд░рдг рдореЗрдВ :):
рдирд╛рдо | рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕ | рдЖрд╡реЗрджрди |
рдЬреЛрдбрд╝реЗрдВ (рдЬреЛрдбрд╝реЗрдВ) | ADD r0, r1, r2
| r0 = r1 + r2 |
рд╕рдм (рдШрдЯрд╛рд╡) | SUB r0, r1, r2
| r0 = r1 - r2 |
RSB (рд╡рд╛рдкрд╕ рдШрдЯрд╛рд╡) | RSB r0, r1, # 10
| r0 = 10 - r1 |
рдмрд╣реБ (рдЧреБрдгрди) | MUL r0, r1, r2
| r0 = r1 * r2 |
MOV | рдЪрд╛рд▓ r0, r1
| r0 = r1 |
ORR (рддрд╛рд░реНрдХрд┐рдХ рд╕рдВрдЪрд╛рд▓рди) | ORR r0, r1, r2
| r0 = r1 | r2 |
TEQ | TEQ r0, r1
| r0 == r1 |
LDR (рдбрд╛рдЙрдирд▓реЛрдб) | LDR r4, [r5]
| r4 = * r5 |
рдПрд╕рдЯреАрдЖрд░ | рдПрд╕рдЯреАрдЖрд░ рдЖрд░ 4, [рдЖрд░ 5]
| * r5 = r4 |
рдПрдбреАрдЖрд░ | рдПрдбреАрдЖрд░ рдЖрд░ 3, рдП
| рдПрдХ рдЪрд░ рд╣реИред r3 = & a |
рдмреБрдирд┐рдпрд╛рджреА рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдордЬрдмреВрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рдХреБрдЫ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкрд╣рд▓реЗ рд╣рдореЗрдВ рдПрдХ рдЖрд░реНрдо рдЯреВрд▓рдЪреИрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдореИрдВ рд▓рд┐рдирдХреНрд╕ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВ рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЪреБрдирд╛:
frank.harvard.edu/~coldwell/toolchain (рд╣рд╛рде-рдЕрдЬреНрдЮрд╛рдд-рд▓рд┐рдирдХреНрд╕-рдЧреНрдиреВ
рдЯреВрд▓рдЪреИрди )ред рдпрд╣ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рд▓рд┐рдирдХреНрд╕ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреА рддрд░рд╣ рд╣реА рд╕рд░рд▓ рд╣реИред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ (рд░реВрд╕реА рдлреЗрдбреЛрд░рд╛) рд╕рд╛рдЗрдЯ рд╕реЗ рдЖрд░рдкреАрдПрдо рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред
рдЕрдм рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЙрджрд╛рд╣рд░рдг рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╕рдордп рдЖ рдЧрдпрд╛ рд╣реИред рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрд┐рд▓реНрдХреБрд▓ рдмреЗрдХрд╛рд░ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдХрд╛рдо рдХрд░реЗрдЧрд╛ :) рдпрд╣рд╛рдВ рд╡рд╣ рдХреЛрдб рд╣реИ рдЬреЛ рдореИрдВ рдЖрдкрдХреЛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реВрдВ:
start: @ , mov r0, #3 @ r0 3 mov r1, #2 @ r1, 2 add r2, r1, r0 @ r0 r1, r2 mul r3, r1, r0 @ r1 r0, r3 stop: b stop @
рд╣рдо .bin рдлрд╝рд╛рдЗрд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддреЗ рд╣реИрдВ:
/usr/arm/bin/arm-unknown-linux-gnu-as -o arm.o arm.s /usr/arm/bin/arm-unknown-linux-gnu-ld -Ttext=0x0 -o arm.elf arm.o /usr/arm/bin/arm-unknown-linux-gnu-objcopy -O binary arm.elf arm.bin
(рдХреЛрдб arm.s рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реИ, рдФрд░ рдЯреВрд▓рдЪреИрди рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ / usr / arm / bin / рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╣реИ)
рдпрджрд┐ рд╕рдм рдХреБрдЫ рдареАрдХ рд░рд╣рд╛, рддреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ 3 рдлрд╛рдЗрд▓реЗрдВ рд╣реЛрдВрдЧреА: arm.s (рдХреЛрдб рд╣реА), arm.o, arm.elf, arm.bin (рдЦреБрдж рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХрд╛рд░реНрдпрдХреНрд░рдо)ред рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рд╕реНрд╡рдпрдВ рдХрд╛ рд╣рд╛рде рдбрд┐рд╡рд╛рдЗрд╕ рд╣реЛрдирд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред рдмрд╕ QEMU рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП:
QEMU рд╡рд┐рднрд┐рдиреНрди рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдХреЗ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрд╡рддрдВрддреНрд░, рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдХрд╛рд░реНрдпрдХреНрд░рдо рд╣реИред
рдЗрдВрдЯреЗрд▓ x86 рдкреНрд░реЛрд╕реЗрд╕рд░ рдФрд░ рдЗрдирдкреБрдЯ / рдЖрдЙрдЯрдкреБрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдЕрдиреБрдХрд░рдг рд╢рд╛рдорд┐рд▓ рд╣реИред 80386, 80486, рдкреЗрдВрдЯрд┐рдпрдо, рдкреЗрдВрдЯрд┐рдпрдо рдкреНрд░реЛ, рдПрдПрдордбреА 64 рдФрд░ рдЕрдиреНрдп x86- рд╕рдВрдЧрдд рдкреНрд░реЛрд╕реЗрд╕рд░ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ; PowerPC, ARM, MIPS, SPARC, SPARC64, m68k - рдХреЗрд╡рд▓ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗред
рдпрд╣ Syllable, FreeBSD, FreeDOS, Linux, Windows 9x, Windows 2000, Mac OS X, QNX, Android, рдЖрджрд┐ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рддреЛ, рд╣рд╛рде рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ qemu-system-arm рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдпрд╣ рдкреИрдХреЗрдЬ рдпрдо рдореЗрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдлреЗрдбреЛрд░рд╛ рд╣реИ, рдЖрдк рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рд┐рд░реНрдл рдХрдорд╛рдВрдб рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ:
yum qemu-system-arm рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
рдЕрдЧрд▓рд╛, рдЖрдкрдХреЛ рдПрдЖрд░рдПрдо рдПрдореБрд▓реЗрдЯрд░ рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддрд╛рдХрд┐ рдпрд╣ рд╣рдорд╛рд░реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЖрд░реНрдо.рдмрд┐рди рдХреЛ рдЪрд▓рд╛рдПред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдлрд╝рд╛рдЗрд▓ flash.bin рдмрдирд╛рдПрдБ, рдЬреЛ QEMU рдХреЗ рд▓рд┐рдП рдлрд╝реНрд▓реИрд╢ рдореЗрдореЛрд░реА рд╣реЛрдЧреАред рдпрд╣ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ:
dd if=/dev/zero of=flash.bin bs=4096 count=4096 dd if=arm.bin of=flash.bin bs=4096 conv=notrunc
рдЕрдм рдкреНрд░рд╛рдкреНрдд рдлрд╝реНрд▓реИрд╢ рдореЗрдореЛрд░реА рдХреЗ рд╕рд╛рде QEMU рд▓реЛрдб рдХрд░реЗрдВ:
qemu-system-arm -M connex -pflash flash.bin -nographic -serial /dev/null
рдЖрдЙрдЯрдкреБрдЯ рдкрд░, рдЖрдкрдХреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдорд┐рд▓реЗрдЧрд╛:
[anton @ localhost ~] $ qemu-system-arm -M Conex -pflash Flash.bin -nographic -serial / dev / null
QEMU 0.15.1 рдореЙрдирд┐рдЯрд░ - рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП 'рд╕рд╣рд╛рдпрддрд╛' рдЯрд╛рдЗрдк рдХрд░реЗрдВ
(QEMU)
рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо arm.bin рдХреЛ рдЪрд╛рд░ рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛, рдЗрд╕рд▓рд┐рдП, рд╕рд╣реА рд╕рдВрдЪрд╛рд▓рди рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рдЗрди рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдХреЛ рджреЗрдЦреЗрдВред рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд░рд▓ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: рдЬрд╛рдирдХрд╛рд░реА рд░рдЬрд┐рд╕реНрдЯрд░
рдЖрдЙрдЯрдкреБрдЯ рдкрд░ рдЖрдк рд╕рднреА 15 рдПрдЖрд░рдПрдо рд░рдЬрд┐рд╕реНрдЯрд░ рджреЗрдЦреЗрдВрдЧреЗ, рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдЪрд╛рд░ рдореЗрдВ рдореВрд▓реНрдп рдмрджрд▓ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗред рдЪреЗрдХ :) рд░рдЬрд┐рд╕реНрдЯрд░ рдорд╛рди рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдмрд╛рдж рдЙрдореНрдореАрдж рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ:
(qemu) info registers R00=00000003 R01=00000002 R02=00000005 R03=00000006 R04=00000000 R05=00000000 R06=00000000 R07=00000000 R08=00000000 R09=00000000 R10=00000000 R11=00000000 R12=00000000 R13=00000000 R14=00000000 R15=00000010 PSR=400001d3 -Z
PS рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореИрдВрдиреЗ ARM рдЕрд╕реЗрдВрдмрд▓рд░ рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ рдмрддрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдпрд╣ рдкрд╕рдВрдж рдЖрдпрд╛ рд╣реЛрдЧрд╛! рдпрд╣ рдЗрд╕ рднрд╛рд╖рд╛ рдХреЗ рдЬрдВрдЧрд▓ рдореЗрдВ рдФрд░ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдФрд░ рдЙрд╕ рдкрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рдЕрдЧрд░ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдЖрдЧреЗ рд▓рд┐рдЦреВрдВрдЧрд╛ рдХрд┐ рдореБрдЭреЗ рдХреНрдпрд╛ рдкрддрд╛ рд╣реИред рдпрджрд┐ рддреНрд░реБрдЯрд┐рдпрд╛рдБ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рдХрд┐рдХ рди рдХрд░реЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдХреЛрдбрд╛рдВрддрд░рдХ рдХреЗ рд▓рд┐рдП рдирдпрд╛ рд╣реВрдБред