ASN.1 рд╕рд░рд▓ рд╢рдмреНрджреЛрдВ рдореЗрдВ (рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ)

рд╣реИрдмрд░ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдЪрдп


рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ рдкрд╛рда рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореЗрд░реЗ рд▓реЗрдЦ "рд╕рд░рд▓ рд╢рдмреНрджреЛрдВ рдореЗрдВ ASN.1" рдХреЗ рдкрд╣рд▓реЗ рджреЛ рдЕрдзреНрдпрд╛рдп рд╣реИрдВред рдЪреВрдБрдХрд┐ рдпрд╣ рд▓реЗрдЦ рд╣реАрд░ рдХреЗ рдорд╛рдирдХреЛрдВ рд╕реЗ рдХрд╛рдлреА рдмрдбрд╝рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдпрд╣ рдЬрд╛рдБрдЪрдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕ рд╕рдВрд╕рд╛рдзрди рдкрд░ рд╕рд░рд▓ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреА рдХреЛрдбрд┐рдВрдЧ рдХрд╛ рдЬреНрдЮрд╛рди рд╣реИред рдпрджрд┐ рджрд░реНрд╢рдХ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдЕрдиреНрдп рд╕рднреА рдЕрдзреНрдпрд╛рдпреЛрдВ рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреВрдВрдЧрд╛ред



рдкрд░рд┐рдЪрдп


рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╛рдлреА рдмрдбрд╝реА рдЕрд╡рдзрд┐ рдореЗрдВ, рдореБрдЭреЗ ASN.1 рд╕реЗ рдирд┐рдкрдЯрдирд╛ рд╣реЛрдЧрд╛ред рдореИрдВ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрдирд╛рдиреЗ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдФрд░ рджреВрд░рд╕рдВрдЪрд╛рд░ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рджреЛрдиреЛрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рдерд╛ред рджреЛрдиреЛрдВ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ, ASN.1 рдорд╛рдирдХ рд╢реБрд░реВ рдореЗрдВ рдмреЗрд╣рдж рд╕рдХреНрд░рд┐рдп рдФрд░ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред



рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд╝рд┐рдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдФрд░ рджреВрд░рд╕рдВрдЪрд╛рд░ рдЙрджреНрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдореИрдВ рд▓рдЧрд╛рддрд╛рд░ рдПрдХ рд╣реА рд░рд╛рдп рдХреЗ рд╕рд╛рде рдорд┐рд▓рд╛ - ASN.1 рдПрдХ рдЬрдЯрд┐рд▓ рдФрд░ рд╕рдордЭрдиреЗ рдпреЛрдЧреНрдп рдкреНрд░рд╛рд░реВрдк рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЗрд╕рд▓рд┐рдП рдПрдиреНрдХреЛрдбрд┐рдВрдЧ / рдбрд┐рдХреЛрдбрд┐рдВрдЧ (рдФрд░ рдХрднреА-рдХрднреА) рдХреЗ рд▓рд┐рдП рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдХрдВрдкрд╛рдЗрд▓рд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрддрд╛ рд╣реИред рд╕рдВрдЪрд╛рд░рд┐рдд рд╕реВрдЪрдирд╛ рдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рдХреЛрдбрд┐рдВрдЧ рдорд╛рдирдХ рднреА)ред



рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╡рд┐рд╢рд╛рд▓ рдмрд╣реБрдордд ASN.1 рдорд╛рдирдХ рдореБрд╢реНрдХрд┐рд▓ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдкреБрд╕реНрддрдХреЛрдВ рдХреА рдХрдореА рд╣реИ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрд╛рд░рдг рдерд╛ рдЬрдм рдПрдХ рд╕реНрдерд┐рддрд┐ рдереАред рд╣рд╛рдВ, рдЗрд╕ рдорд╛рдирдХ рдХреЗ рдЖрджрд░рдгреАрдп рдЙрдореНрд░ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдП рдЧрдП рд╕рдВрдХрд▓рдХ рдФрд░ рд╡рд┐рднрд┐рдиреНрди рд▓реЗрдЦ, рдЕрднреА рднреА рдмрд╣реБрдд рдХрдо рдХрд┐рддрд╛рдмреЗрдВ рд╣реИрдВ (рдпрд╛ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рднреА рд▓реЗрдЦ рд╣реИрдВ), рдЬрд╣рд╛рдВ рдПрдХ рд╕рд░рд▓ рдФрд░ рд╕рдордЭ рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реА рднрд╛рд╖рд╛ рдореЗрдВ, рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде, рдПрдПрд╕рдПрди рд╕рд░рд▓ рдкреНрд░рдХрд╛рд░ рдХреЗ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЗ рдореБрджреНрджреЛрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред ред



рд╕реНрдерд┐рддрд┐ рдХреЛ рдареАрдХ рдХрд░рддреЗ рд╣реБрдП, рдпрд╣ рд▓реЗрдЦ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдореИрдиреБрдЕрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЙрд╕ рд╡реНрдпрдХреНрддрд┐ рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдиреЗ ASN.1 рдХреЛрдбрд┐рдВрдЧ рдХреА рдЬрдЯрд┐рд▓рддрд╛рдУрдВ рдХреЛ рд╕рдордЭрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЗрд╕ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рд╕рд╛рдордирд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред рд▓реЗрдЦ рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕рд░рд▓ (рдЧреИрд░-рдорд┐рд╢реНрд░рд┐рдд) рдкреНрд░рдХрд╛рд░реЛрдВ рдХреА рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рд╢рд╛рдорд┐рд▓ рд╣реИ - REAL, INTEGER, OBJECT IDENTIFIER, рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рддрд╛рд░, BOOLEAN, NULL, SEQUENCE, SETред рд▓реЗрдЦ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдХреЛрдбрд┐рдВрдЧ рдХреА рд╕рднреА рд╕реВрдХреНрд╖реНрдорддрд╛рдУрдВ рдХрд╛ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдХреЛрдбрд┐рдВрдЧ рдХреА рд╕реВрдХреНрд╖реНрдорддрд╛рдУрдВ рдХреЛ рд╕рдордЭрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╡рд┐рд╕реНрддреГрдд рдЙрджрд╛рд╣рд░рдг рднреА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдЖрд▓реЗрдЦ рд╕реЗ рдЬреБрдбрд╝реА рдПрдХ рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ, рдЖрдк C ++ рдХреЛрдб рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд▓реЗрдЦ рд╕реЗ рд╕рднреА рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ, рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рд╛рдордЧреНрд░реА рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рддреА рд╣реИ рдЬрд┐рд╕реЗ рдЗрд╕ рд▓реЗрдЦ рдХреЗ рдврд╛рдВрдЪреЗ рдореЗрдВ рдирд╣реАрдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рд▓реЗрдЦ рдХреА рд╕рднреА рд╕рд╛рдордЧреНрд░рд┐рдпрд╛рдВ 2008 рд╕реЗ рдирд╡реАрдирддрдо ASN.1 рдорд╛рдирдХ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рд╕рднреА рдорд╛рдирдХреЛрдВ рдХреЛ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ http://www.itu.int/rec/T-REC-X.680-X.693- рд▓рд┐рдВрдХ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред 200811-рдЖрдИ / рдЗрдВ ред рдпрджрд┐ рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдирд╣реАрдВ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рд▓реЗрдЦ рдореЗрдВ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг ASN.1 BER рдорд╛рдирдХ (рдмреЗрд╕рд┐рдХ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдирд┐рдпрдо) рдореЗрдВ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рдХреВрдЯрдмрджреНрдз рдХрд░рддреЗ рд╣реИрдВред

рдЕрдзрд┐рдХрд╛рдВрд╢ ASN.1 рдореИрдиреБрдЕрд▓ рдФрд░ рдкреБрд╕реНрддрдХреЛрдВ рдореЗрдВ, рдХреЛрдбрд┐рдВрдЧ рдХрд╛ рдЕрдзреНрдпрдпрди рд╕рдмрд╕реЗ рд╕рд░рд▓, рдЬрдЯрд┐рд▓ рдирд╣реАрдВ, рдкреНрд░рдХрд╛рд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рд╕рдмрд╕реЗ рдХрдард┐рди рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдЖрджреЗрд╢ рдмрд┐рд▓реНрдХреБрд▓ рд╡рд┐рдкрд░реАрдд рд╣реЛрдЧрд╛ - рдкрд╛рдардХ рдХреЛ рдкрд╣рд▓реЗ рдЬрдЯрд┐рд▓ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдХреЛрдбрд┐рдВрдЧ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣реА рд╣рдо рдзреАрд░реЗ-рдзреАрд░реЗ рдкреНрд░реЛрдЯреЛрдЬреЛрдЖ рдХреЗ рдЕрдзреНрдпрдпрди рдкрд░ рдЖрдЧреЗ рдмрдврд╝реЗрдВрдЧреЗред рдпрд╣ рдПрдХ рджрд┐рди рдПрдХ рдЬрдЯрд┐рд▓ рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдХреЛрдбрд┐рдВрдЧ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рд╕реАрдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХ рд╕рд░рд▓ рдХреЛрдбрд┐рдВрдЧ рдкрджреНрдзрддрд┐ рдХреЛ рд╕рдордЭ рд╕рдХрддрд╛ рд╣реИред



рдЕрдзреНрдпрд╛рдп 1. рд╕рд╛рдорд╛рдиреНрдп ASN.1 рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдирд┐рдпрдо


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, ASN.1 рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреА рдХреБрдЫ рдореВрд▓ рдмрд╛рддреЗрдВ рд╕реНрдкрд╖реНрдЯ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред



рдкрд╣рд▓реЗ, рдЖрдЗрдП рдмрддрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдорд╛рдирдХ рдХреНрдпреЛрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ред рджреБрдирд┐рдпрд╛ рдореЗрдВ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХрдВрдкреНрдпреВрдЯрд░ рд╣реИрдВред рдФрд░ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрди рдХрдВрдкреНрдпреВрдЯрд░реЛрдВ рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдорд╛рдирдХ рд╣реИрдВред ASN.1 рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдорд╛рдирдХ рдХреЗ рд░реВрдк рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬреЛ рдЖрдкрдХреЛ рдордирдорд╛рдиреА рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рдорд╛рдирдХ рдХреА рд╕рдордЭ рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рднреА рдХрдВрдкреНрдпреВрдЯрд░ рджреНрд╡рд╛рд░рд╛ рд╕рдордЭреА рдЬрд╛рдПрдЧреАред ASN.1 рдорд╛рдирдХ рдЗрд╕рд▓рд┐рдП рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕реНрддрд░ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЙрдирдХреА рдкрд╛рд░рд╕реНрдкрд░рд┐рдХ рд╡реНрдпрд╡рд╕реНрдерд╛ рдХреЗ рд╕реНрддрд░ рдкрд░ рднреА рд╕рдЦреНрдд рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдирд┐рдпрдо рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдпрд╣ рдХрд╣рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ ASN.1 рдорд╛рдирдХ рдкрд╛рда рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рджреНрд╡рд┐рдЖрдзрд╛рд░реА рдЕрдиреБрдХреНрд░рдо рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдПрдиреНрдХреЛрдб рдХрд░рддрд╛ рд╣реИред рдкрд╛рда рдкреНрд░рд╛рд░реВрдк (XML) рдХреЗ рд░реВрдк рдореЗрдВ рдбреЗрдЯрд╛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реБрдП, рдХреЛрдбрд┐рдВрдЧ рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреЗ рд░реВрдкрд╛рдВрддрд░ рдкрд╣рд▓реЗ рд╣реА рдкреНрд░рдХрдЯ рд╣реЛ рдЪреБрдХреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрди рд╕реНрд╡рд░реВрдкреЛрдВ рдХрд╛ рдЕрд╡рд▓реЛрдХрди рдЗрд╕ рд▓реЗрдЦ рдХреЗ рджрд╛рдпрд░реЗ рд╕реЗ рдкрд░реЗ рд╣реИред рдпрд╣рд╛рдВ рд╣рдо рдХреЗрд╡рд▓ рд╕рдмрд╕реЗ рдХрдард┐рди - рдмрд╛рдЗрдирд░реА рдПрдиреНрдХреЛрдбрд┐рдВрдЧ (ASN.1 BER рдкреНрд░рд╛рд░реВрдк - рдореВрд▓ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдирд┐рдпрдо) рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред



ASN.1 рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдПрдирдХреЛрдбреЗрдб рдбреЗрдЯрд╛ рдмрд╛рдЗрдЯреНрд╕ (рдпрд╛ "рдУрдХрдЯреЗрдЯреНрд╕") рдХрд╛ рдПрдХ рдХреНрд░рдо рд╣реИ рдЬреЛ рдПрдХ рдХреЗ рдмрд╛рдж рдПрдХ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЕрдВрддрд░рд╛рд▓ рдХреЗ рдЪрд▓рддреЗ рд╣реИрдВред ASN.1 рдореЗрдВ рдПрдиреНрдХреЛрдбреЗрдб рдЕрдиреБрдХреНрд░рдо рдХреЛ рд╕рдВрдЪрд╛рд░ рд▓рд╛рдЗрдиреЛрдВ рдкрд░ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЧрдпрд╛ рд╣реИ - ASN.1 рдореЗрдВ рдПрдиреНрдХреЛрдбреЗрдб рд╕реВрдЪрдирд╛ рдмреНрд▓реЙрдХ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕рдХреА рдХреБрд▓ рд▓рдВрдмрд╛рдИ рдФрд░ рд╕рд╛рдордЧреНрд░реА рдХрд╛ рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рд╡рд░рдг рд╢рд╛рдорд┐рд▓ рд╣реИред



рдПрдиреНрдХреЛрдбреЗрдб рдмреНрд▓реЙрдХ рдореЗрдВ рдирд┐рд╣рд┐рдд рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдРрд╕реЗ рд╡рд┐рд╡рд░рдг рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░рддреНрдпреЗрдХ рдмреНрд▓реЙрдХ рдХреА рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рд╛рдорд╛рдиреНрдп рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдмреНрд▓реЙрдХ рдореЗрдВ рдХрдо рд╕реЗ рдХрдо 3 рдЖрд╡рд╢реНрдпрдХ рднрд╛рдЧ рд╣реЛрддреЗ рд╣реИрдВ (рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдХреЗрд╡рд▓ рдкрд╣рд▓реЗ рджреЛ рдмреНрд▓реЙрдХ рд╣реА рд░рд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрди рдорд╛рдорд▓реЛрдВ рдХреЛ рдЕрд▓рдЧ рд╕реЗ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ):


  1. рдмреНрд▓реЙрдХ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ (рдХрдИ рдУрдХрдЯреЗрдЯреНрд╕ рддрдХ);
  2. рдмреНрд▓реЙрдХ рдХреА рдХреБрд▓ рд▓рдВрдмрд╛рдИ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ (рдХрдИ рдУрдХрдЯреЗрдЯреНрд╕ рддрдХ);
  3. рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдореВрд▓реНрдп рд╡рд╛рд▓рд╛ рд╣рд┐рд╕реНрд╕рд╛ рдЬреЛ рдЗрд╕ рдмреНрд▓реЙрдХ рдХреЛ рд╡рд╣рди рдХрд░рддрд╛ рд╣реИ (рдХрдИ рдУрдХрдЯреЗрдЯреНрд╕ рддрдХ);

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдмреНрд▓реЙрдХ рд╡реИрд▓реНрдпреВ (рдХрдИ рдУрдХрдЯреЗрдЯреНрд╕) рдХреЗ рдЕрдВрдд рдХреЗ рд▓рд┐рдП рдСрдХреНрдЯреЗрдЯреНрд╕ рдХрд╛ рдПрдХ рдЪреМрдерд╛, рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣рд┐рд╕реНрд╕рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рднрд╛рдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдж рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреАред



рд╣рдо ASN.1-рдПрдиреНрдХреЛрдбреЗрдб рдмреНрд▓реЙрдХ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рднрд╛рдЧ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВред



рдПрдХ рдмреНрд▓реЙрдХ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рднрд╛рдЧ рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдУрдХрдЯреЗрдЯ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕ рдкрд╣рд▓реЗ рдУрдХрдЯреЗрдЯ рдХрд╛ рдкреНрд░рд╛рд░реВрдк рд╕рдЦреНрддреА рд╕реЗ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред



рдпрджрд┐ рдмреНрд▓реЙрдХ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ 0-30 рдХреА рд╕реАрдорд╛ рдореЗрдВ рд╣реИ, рддреЛ рдкрд╣рдЪрд╛рди рдмреНрд▓реЙрдХ рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдСрдХреНрдЯреЗрдЯ рд╣реЛрддрд╛ рд╣реИред рдпрджрд┐ рдмреНрд▓реЙрдХ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХрд╛ рдорд╛рди 31 рдпрд╛ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рдмрд┐рдЯреНрд╕ рдореЗрдВ 5-1 рд╕рднреА 1 рд╕реЗрдЯ рд╣реИрдВ, рдФрд░ рдмрд╛рдж рдХреЗ рдСрдХреНрдЯреЗрдЯреНрд╕ рдореЗрдВ рд╡рд╛рдВрдЫрд┐рдд рд╕рдВрдЦреНрдпрд╛ рдПрдиреНрдХреЛрдбреЗрдб рд╣реИред рдкреНрд░рдХрд╛рд░ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рд╕рдВрдЦреНрдпрд╛ рдПрдХ рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреВрд░реНрдгрд╛рдВрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдиреНрдХреЛрдбреЗрдб рд╣реИ, рдЬрд┐рд╕рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдмреЗрд╕ 128 рдореЗрдВ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдУрдХрдЯреЗрдЯ рдореЗрдВ рдмреНрд▓реЙрдХ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдк рдЖрдЗрдбреЗрдВрдЯрд┐рдлрд╝рд╛рдпрд░ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ, рдЙрдЪреНрдЪ-рдХреНрд░рдо рдмрд┐рдЯ 1 рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрдВрддрд┐рдо рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдЕрдВрддрд┐рдо рдСрдХреНрдЯреЗрдЯ (рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рд╡рд┐рдзрд┐ рдУрдмреАрдЬреЗрдХреНрдЯ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП SID рдХреЗ рд╕рдорд╛рди рд╣реИ IDENTIFIER, рдиреАрдЪреЗ рджреЗрдЦреЗрдВ)ред



рдмреНрд▓реЙрдХ рдХреА рдХреБрд▓ рд▓рдВрдмрд╛рдИ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдореЗрдВ рдХрдо рд╕реЗ рдХрдо 1 рдСрдХреНрдЯреЗрдЯ рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЙрд╕ рдорд╛рди рдХреА рд▓рдВрдмрд╛рдИ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдмреНрд▓реЙрдХ рд╣реЛрддрд╛ рд╣реИ (рдпрд╛рдиреА, рдХреЗрд╡рд▓ рдмреНрд▓реЙрдХ рдХреА рд▓рдВрдмрд╛рдИ рдЬрд┐рд╕рдореЗрдВ рдПрдиреНрдХреЛрдбреЗрдб рд╡реИрд▓реНрдпреВ рд╣реЛрддреА рд╣реИ, рди рдХрд┐ рдкреВрд░реЗ рдПрдиреНрдХреЛрдбреЗрдб рдмреНрд▓реЙрдХ рдХреА рдХреБрд▓ рд▓рдВрдмрд╛рдИ рдмреНрд▓реЙрдХ рдЖрдЗрдбреЗрдВрдЯрд┐рдлрд╝рд╛рдпрд░ рдФрд░ рдХреБрд▓ рд▓рдВрдмрд╛рдИ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд╕рд╛рде рд╣реЛрддреА рд╣реИ!)ред рд╕рд░рд▓рддрдо рдорд╛рдорд▓реЗ рдореЗрдВ рдмреНрд▓реЙрдХ рдХреА рд▓рдВрдмрд╛рдИ рдХреЛ рдЖрдзрд╛рд░ 128 рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреВрд░реНрдгрд╛рдВрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдмрд┐рдЯ 8 (рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдЯ) рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдзреНрд╡рдЬ рд╣реИред рдпрджрд┐ рдПрдиреНрдХреЛрдбреЗрдб рдмреНрд▓реЙрдХ рдХреА рдХреБрд▓ рд▓рдВрдмрд╛рдИ 128 рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рдмреНрд▓реЙрдХ рдХреА рдХреБрд▓ рд▓рдВрдмрд╛рдИ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рдкрд╣рд▓реЗ рдСрдХреНрдЯреЗрдЯ рдХрд╛ рдЙрдЪреНрдЪ-рдХреНрд░рдо рдмрд┐рдЯ 1 рдкрд░ рд╕реЗрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЕрдЧрд▓реЗ 7 рдмрд┐рдЯреНрд╕ рдХреЛ рдмрд╛рдж рдХреЗ рдСрдХреНрдЯреЗрдЯ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреВрд░реНрдгрд╛рдВрдХ рдорд╛рди рдХреЛ рдПрдирдХреЛрдб рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдмреНрд▓реЙрдХ рдХреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХреБрд▓ рд▓рдВрдмрд╛рдИ рдХреЛ рдПрдиреНрдХреЛрдб рдХрд░реЗрдЧрд╛ред



рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдмреНрд▓реЙрдХ рдХреА рдХреБрд▓ рд▓рдВрдмрд╛рдИ L = 201 рд╣реИ, рддреЛ рдЗрд╕реЗ рджреЛ рдУрдХрдЯреЗрдЯреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛:


  1. 1000 0001 (81)
  2. 1100 1001 (C9)

рдмреНрд▓реЙрдХ рдХреА рдХреБрд▓ рд▓рдВрдмрд╛рдИ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХрд┐рд╕реА рдмреНрд▓реЙрдХ рдХреЛ рдбрд┐рдХреЛрдб рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╕реАрдзреЗ рджрд┐рдП рдЧрдП рдмреНрд▓реЙрдХ рдХреЗ рдЕрдВрдд рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдЬрдм рдПрдХ рдмреНрд▓реЙрдХ рдХреА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХреЛрдбрд┐рдВрдЧ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рдХрд┐рддрдиреЗ рдСрдХреНрдЯреЗрдЯ рд╣реЛрдВрдЧреЗ (рд╕реНрдЯреНрд░реАрдо рдХреЛрдбрд┐рдВрдЧ)ред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдмреНрд▓реЙрдХ рдХреА рдХреБрд▓ рд▓рдВрдмрд╛рдИ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХрд╛ рдкрд╣рд▓рд╛ рдУрдХрдЯреЗрдЯ 80 рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдЯ 8 1 рд╣реИ рдФрд░ рдЕрдиреНрдп рд╕рднреА рдмрд┐рдЯ 0 рд╣реИрдВ)ред рдкреВрд░реЗ рдмреНрд▓реЙрдХ рдХрд╛ рдЕрдВрдд рджреЛ рд▓рдЧрд╛рддрд╛рд░ рдУрдХрдЯреЗрдЯ 00 00 рдХреЗ рдореВрд▓реНрдп рдХреЗ рдмреНрд▓реЙрдХ рдореЗрдВ рдЙрдкрд╕реНрдерд┐рддрд┐ рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реЛрддрд╛ рд╣реИред



рдЕрдзреНрдпрд╛рдп 2. рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ


рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рд╡рд░рдг:



рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдлреНрд▓реЛрдЯрд┐рдВрдЧ рдкреЙрдЗрдВрдЯ рдирдВрдмрд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд┐рджреНрдзрд╛рдВрддред рдлреНрд▓реЛрдЯрд┐рдВрдЧ рдкреЙрдЗрдВрдЯ рдирдВрдмрд░реЛрдВ рдХреЛ рдЖрдорддреМрд░ рдкрд░ рддреАрди рднрд╛рдЧреЛрдВ рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: рдордВрдЯрд┐рд╕рд╛, рдмреЗрд╕ рдФрд░ рдПрдХреНрд╕рдкреЛрдиреЗрдВрдЯред рдЗрд╕реЗ рдХреЗрд╡рд▓ рд╕реВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдзрд┐рдХ рд╕рдордЭрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: REAL = (mantissa) * (рдЖрдзрд╛рд░) (рдШрд╛рддрд╛рдВрдХ) ред рдпрджрд┐, рдЗрд╕ рд╕реВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рд╕рд╛рдзрд╛рд░рдг рджрд╢рдорд▓рд╡ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ REAL = (mantissa) * 10 (рдШрд╛рддрд╛рдВрдХ) рдорд┐рд▓рддрд╛ рд╣реИ ред рдЪреВрдВрдХрд┐ ASN.1 рдореЗрдВ рдордВрдЯрд┐рд╕рд╛ рдФрд░ рдШрд╛рддрд╛рдВрдХ рджреЛрдиреЛрдВ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдФрд░ рдирдХрд╛рд░рд╛рддреНрдордХ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХреЗ рд╕рд╛рде рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рдмрдбрд╝реЗ рдФрд░ рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рдЫреЛрдЯреЗ рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред



ASN.1 рдореЗрдВ рдлреНрд▓реЛрдЯрд┐рдВрдЧ рдкреЙрдЗрдВрдЯ рдирдВрдмрд░реЛрдВ (IEEE 754) рдХреЗ рдкрд╛рд░рдВрдкрд░рд┐рдХ, рдорд╢реАрди-рдЖрдзрд╛рд░рд┐рдд рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХреЗ рд╡рд┐рдкрд░реАрдд, REAL рдкреНрд░рдХрд╛рд░ рдПрдХ рдордВрдЯрд┐рд╕рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдХрд╛рд░ рдореЗрдВ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдЕрд╕реАрдорд┐рдд рд╣реИ (рдПрдХ рдордВрдЯрд┐рд╕рд╛ рдПрдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдЕрд╕реАрдорд┐рдд рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдУрдХрдЯреЗрдЯ рд╕реЗ рдорд┐рд▓рдХрд░ рдФрд░ рдПрдХ рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░ рд╕рдХрддрд╛ рд╣реИ), рдФрд░ рдкреНрд░рддрд┐рдкрд╛рджрдХ рдХрд╛ рдЖрдХрд╛рд░ (рдШрд╛рддрд╛рдВрдХ рдХрд╛ рдорд╛рди рднреА рдСрдХреНрдЯреЗрдЯ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдмрдирд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)ред рдХреЛрдбрд┐рдВрдЧ рдкреНрд░рддрд┐рдмрдВрдз рдХреЗрд╡рд▓ "рдЖрдзрд╛рд░" рдХреЗ рдореВрд▓реНрдп рдкрд░ рд▓рдЧрд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ: рдХреЗрд╡рд▓ рд╕рдВрдЦреНрдпрд╛ 10, 2, 8 рдпрд╛ 16 рдХреЛ "рдЖрдзрд╛рд░" рдХреЗ рд░реВрдк рдореЗрдВ рдЪреБрдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред



рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддреАрди рдореБрдЦреНрдп рдмреНрд▓реЙрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ:


  1. рд╕реЗрд╡рд╛ рд╕реВрдЪрдирд╛ рдСрдХреНрдЯреЗрдЯ;
  2. рдХрд┐рд╕реА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдШрд╛рддрд╛рдВрдХ;
  3. рдордВрдЯрд┐рд╕рд╛ рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдореВрд▓реНрдп;

рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕реВрдЪрдирд╛ рдУрдХрдЯреЗрдЯ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬрд╛рдирдХрд╛рд░реА рд╣реИ:



рдХрд┐рд╕реА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдШрд╛рддрд╛рдВрдХ рдорд╛рди рдПрдХ рдкреВрд░реНрдгрд╛рдВрдХ рд╕реЗ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдУрдХреНрдЯреЗрдЯ рдХреА рд╕рдВрдЦреНрдпрд╛ рдордирдорд╛рдиреА рд╣реЛрддреА рд╣реИред рдпрд╣рд╛рдВ рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рд╡рд┐рд╖рдпрд╛рдВрддрд░ рдмрдирд╛рдпрд╛ рдЬрд╛рдП рдФрд░ рдмрддрд╛рдпрд╛ рдЬрд╛рдП рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ ASN.1 рдореЗрдВ рдзрдирд╛рддреНрдордХ рдкреВрд░реНрдгрд╛рдВрдХ рдФрд░ рдЛрдгрд╛рддреНрдордХ рджреЛрдиреЛрдВ рдХреИрд╕реЗ рдХреВрдЯрдмрджреНрдз рд╣реЛрддреЗ рд╣реИрдВред



ASN.1 рдореЗрдВ рдкреЙрдЬрд┐рдЯрд┐рд╡ рдкреВрд░реНрдгрд╛рдВрдХ "рдЗрдВрдбрд┐рд╕" рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХреЛ рдЖрдзрд╛рд░ 256 рдореЗрдВ рдЕрдкрдШрдЯрди рдХреА рд╕рдВрдмрдВрдзрд┐рдд рдбрд┐рдЧреНрд░реА рдХреЗ рд╕рд╛рде рджрд░реНрд╢рд╛рддреЗ рд╣реИрдВред рдЕрд░реНрдерд╛рддреН, рд╕рд╛рдорд╛рдиреНрдп рджрд╢рдорд▓рд╡ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рдПрдХ рдкреВрд░реНрдгрд╛рдВрдХ рдкрд╣рд▓реЗ рдмреЗрд╕ 256 рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ 256 рдбрд┐рдЧреНрд░реА рдХреЗ рд╕рдВрдЧрдд рдбрд┐рдЧреНрд░реА рд╡рд╛рд▓реЗ рдЗрдВрдбреЗрдХреНрд╕ рдХреЛ рдХреЛрдбрд┐рдВрдЧ рдСрдХреНрдЯреЗрдЯ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред ред рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдВрдЦреНрдпрд╛ 32639 рдХреЛ рд▓реАрдЬрд┐рдПред рдпрд╣ рд╕рдВрдЦреНрдпрд╛ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рдШрдЯрд┐рдд рд╣реИ: 32639 10 = 127 * 256 1 + 127 * 256 0 ред рдЗрд╕рд▓рд┐рдП, 256 рдХреА рд╕рдВрдЧрдд рд╢рдХреНрддрд┐рдпреЛрдВ рдкрд░ рдЧреБрдгрд╛рдВрдХ (127, 127) рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛрдЧрд╛ред рджрд╢рдорд▓рд╡ рдорд╛рди 127 рдХреЛ рдмрд┐рдЯреНрд╕ рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреЗ рд╣реБрдП, рд╣рдореЗрдВ рдорд┐рд▓рддрд╛ рд╣реИ: 127 = 0111 1111, рдпрд╛ 0 рд╕реЗ F рддрдХ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд╛рд░ рдмрд┐рдЯреНрд╕ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рд╕рдореВрд╣ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЗ рд╣реБрдП, рд╣рдореЗрдВ рдорд┐рд▓рддрд╛ рд╣реИ: 127 = 0111 1111 = 7Fред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдВрдЦреНрдпрд╛ 32639 рджреЛ рдУрдХрдЯреЗрдЯ 7 рдПрдл 7 рдПрдл рдХреЗ рдЕрдиреБрдХреНрд░рдо рджреНрд╡рд╛рд░рд╛ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред



рдЙрдкрд░реЛрдХреНрдд рд╡рд┐рдзрд┐ рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рдмрдбрд╝реЗ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкреВрд░реНрдгрд╛рдВрдХ рдХреЛ рд╕рд╛рдВрдХреЗрддрд┐рдХ рд╢рдмреНрджреЛрдВ рдореЗрдВ рдмрджрд▓ рд╕рдХрддреА рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдирдХрд╛рд░рд╛рддреНрдордХ рдкреВрд░реНрдгрд╛рдВрдХ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдХреЛрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛? рдпрд╣ рдирдХрд╛рд░рд╛рддреНрдордХ рдкреВрд░реНрдгрд╛рдВрдХ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╣реИ рдХрд┐ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдорд╛рди рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред



рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдлрд┐рд░ рд╕реЗ рд╕рдВрдЦреНрдпрд╛ 32639 рд▓реЗрдВ, рд▓реЗрдХрд┐рди рдЕрдм рдЗрд╕реЗ рдирдХрд╛рд░рд╛рддреНрдордХ (-32639) рд╣реЛрдиреЗ рджреЗрдВред рдирдХрд╛рд░рд╛рддреНрдордХ рдкреВрд░реНрдгрд╛рдВрдХ рдХреЗ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЛ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рддрд╛рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рджреЛ рдкреВрд░реНрдгрд╛рдВрдХ рдорд╛рди рдПрдирдХреЛрдбреЗрдб рд╣реЛрдВ - рдПрдХ рдореБрдЦреНрдп рдореВрд▓реНрдп рдФрд░ рджреВрд╕рд░рд╛ рдкреВрд░реНрдгрд╛рдВрдХ рдорд╛рди, рдЬрд┐рд╕реЗ рдореБрдЦреНрдп рдореВрд▓реНрдп рд╕реЗ рдШрдЯрд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣реА рд╣реИ, рдЬрдм рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдирдХрд╛рд░рд╛рддреНрдордХ рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдХреЛрдбрд┐рдВрдЧ, рдмрд╕ рдкрд░рд┐рдгрд╛рдо рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдВ (x - y)ред рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕ рд╕рд░рд▓рддрдо рд╕реВрддреНрд░ рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрджрд┐ "x" рдХрд╛ рдорд╛рди "y" рдХреЗ рдорд╛рди рд╕реЗ рдХрдо рд╣реИ, рддреЛ рдкрд░рд┐рдгрд╛рдо рд╢реВрдиреНрдп (рдпрд╛рдиреА рдПрдХ рдЛрдгрд╛рддреНрдордХ рд╕рдВрдЦреНрдпрд╛) рд╕реЗ рдХрдо рд╣реЛрдЧрд╛ред



рдЙрдкрд░реЛрдХреНрдд рджреЛ рд╕рдВрдЦреНрдпрд╛рдПрдБ (рдореБрдЦреНрдп рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдореБрдЦреНрдп рд╕реЗ рдШрдЯрд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП) рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдирд┐рдпрдореЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдмрдирд╛рдИ рдЧрдИ рд╣реИрдВ:




рдЖрдЗрдП рдЙрджрд╛рд╣рд░рдг (-32639) рд╕реЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХреЛрдбрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред рдЪреВрдВрдХрд┐ рдореБрдЦреНрдп рд╕реЗ рдШрдЯрд╛рдИ рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕рдВрдЦреНрдпрд╛ рдореБрдЦреНрдп рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдЗрд╕ рдкреВрд░реНрдгрд╛рдВрдХ рдХреА рдкрд╕рдВрдж рдХреЗ рд╕рд╛рде рдирдХрд╛рд░рд╛рддреНрдордХ рдкреВрд░реНрдгрд╛рдВрдХреЛрдВ рдХреА рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдареАрдХ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИред рдЪреВрдВрдХрд┐, рдирд┐рдпрдореЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЗрд╕ рдШрдЯрд╛рд╡ рдХреЛ 256 рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╡рд┐рдШрдЯрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ 256 рдХреА рдЗрд╕реА рд╢рдХреНрддрд┐рдпреЛрдВ рдкрд░ рд╕реВрдЪрдХрд╛рдВрдХреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдмрд┐рдЯреНрд╕ рдкрд╣рд▓реЗ рдмрд┐рдЯ рдХреЛ рдЫреЛрдбрд╝рдХрд░ 0 рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛрдВ, рд╕рдВрднрд╛рд╡рд┐рдд рдШрдЯрд╛рд╡ рдХреА рд╕рдВрдЦреНрдпрд╛ 80 (1000 0000) рдХреЗ рдПрдХ рдкреНрд░рдореБрдЦ рдСрдХреНрдЯреЗрдЯ рдФрд░ рдУрдХрдЯреЗрдЯреНрд╕ рдХреА рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреА рд╣реИред рдЗрд╕рдХреЗ рдмрд╛рдж 00ред рдпрд╣ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдШрдЯрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: 80 (128 10 ), 80 00 (32768 10 ), 80 00 00 (8388608 10 ), рдЖрджрд┐ред рд╣рдорд╛рд░реА рд╕рдВрдЦреНрдпрд╛ "-32639" рдХреЛ рдПрдирдХреЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдкрд╣рд▓реЗ рдЙрдкрдпреБрдХреНрдд рдШрдЯрд╛рдП рдЧрдП рдХреЛ рдЪреБрдирддреЗ рд╣реИрдВ, рдЬреЛ рдореЛрдбреНрдпреВрдмрд▓ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ (рдпрд╛рдиреА рд╕рдВрдЦреНрдпрд╛ 32639 рд╕реЗ рдЕрдзрд┐рдХ)ред рдирд┐рдХрдЯрддрдо рдРрд╕реА рд╕рдВрдЦреНрдпрд╛ 32768 (80 00) рд╣реИред



рдЕрдм рдЖрдкрдХреЛ рдореБрдЦреНрдп рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдореВрд▓реНрдп рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд╕рдмрд╕реЗ рд╕рд░рд▓ рд╕реВрддреНрд░ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: x - 32768 = -32629ред рд╕рдореАрдХрд░рдг рдХреЛ рд╣рд▓ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо x = 129 = 129 * 256 0 рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП, 129 рдирдВрдмрд░ рдПрдХ рдмрд╛рдЗрдЯ 81 256 рдХреЗ рд╕рд╛рде рдПрдиреНрдХреЛрдбреЗрдб рд╣реИред рдЪреВрдВрдХрд┐ рдпрджрд┐ рдЖрдк рдирд┐рдпрдореЛрдВ рдХреЛ рдЕрдзрд┐рдХ рдмрд╛рд░реАрдХреА рд╕реЗ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдореБрдЦреНрдп рдФрд░ рдШрдЯрд╛рдП рдЧрдП рдмрд┐рдЯреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрд░рд╛рдмрд░ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдШрдЯрд╛рд╡ рдореЗрдВ рдмрд┐рдЯреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ 16 рд╣реИред рдЗрд╕реА рд╕рдордп, рдореБрдЦреНрдп рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдмрд┐рдЯреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗрд╡рд▓ 8. рд╣реИред рдореБрдЦреНрдп рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдмрд┐рдЯреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдмрд╕ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдЧреИрд░-рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╢реВрдиреНрдп рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдлрд┐рд░ рд╣рдореЗрдВ 129 = 0 * 256 1 + 129 * 256 0 рдорд┐рд▓рддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕рд▓рд┐рдП рдореБрдЦреНрдп рд╕рдВрдЦреНрдпрд╛ рдХреЛ рджреЛ рдУрдХрдЯреЗрдЯреНрд╕ рдореЗрдВ (00 81) рдХреЗ рд░реВрдк рдореЗрдВ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдкрд░рд┐рдгрд╛рдореА рджреЛ рдСрдХреНрдЯреЗрдЯ рдЖрдзрд╛рд░ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рдмрд┐рдЯ рдХреЛ 1 рдкрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдкрд░, рд╣рдореЗрдВ рдЕрдВрддрд┐рдо рд╕рдВрдЦреНрдпрд╛ рдорд┐рд▓рддреА рд╣реИ, рдЬреЛ "-32639" рдХреЛ рдПрдирдХреЛрдб рдХрд░рддреА рд╣реИред рдпрд╣ рд╕рдВрдЦреНрдпрд╛ рджреЛ рдУрдХрдЯреЗрдЯреНрд╕ 80 81 рдореЗрдВ рдПрдиреНрдХреЛрдбреЗрдб рд╣реЛрдЧреАред рдПрдХ рдмрд╛рд░ рдлрд┐рд░, рдПрдиреНрдХреЛрдбреЗрдб рдирдВрдмрд░ рдХреЗ рд╕рднреА рдмрд┐рдЯреНрд╕ рд╕реЗ рдореБрдЦреНрдп рд╕рдВрдЦреНрдпрд╛ рдмрдирддреА рд╣реИ, рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдЯ рдХреЛ рдЫреЛрдбрд╝рдХрд░ (рд╣рдо рдкрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдореБрдЦреНрдп рд╕рдВрдЦреНрдпрд╛ рдПрдиреНрдХреЛрдбреЗрдб 00 81 рд╣реИ), рдФрд░ рдШрдЯрд╛рдпрд╛ рдЧрдпрд╛ рдирдВрдмрд░ рдХреЗрд╡рд▓ рдПрдХ рдкрд╣рд▓реЗ рдмрд┐рдЯ рд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, 1 рд╕реЗ рд╕реЗрдЯ рдХрд░реЗрдВ , рдФрд░ рдЕрдиреНрдп рд╕рднреА рдмрд┐рдЯреНрд╕ 0 рдкрд░ рд╕реЗрдЯ рд╣реЛрддреЗ рд╣реИрдВ (рд╣рдо рдкрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдШрдЯрд╛рдпрд╛ рдЧрдпрд╛ рдирдВрдмрд░ 80 00 рдХреЗ рд░реВрдк рдореЗрдВ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред



рдФрд░ рдЕрдм, рдЕрдЪреНрдЫреА рдЬрд╛рдирдХрд╛рд░реА - рдЖрдзреБрдирд┐рдХ рдХрдВрдкреНрдпреВрдЯрд░ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ, рдкреВрд░реНрдгрд╛рдВрдХ (рд╕рдХрд╛рд░рд╛рддреНрдордХ рдФрд░ рдирдХрд╛рд░рд╛рддреНрдордХ рджреЛрдиреЛрдВ) рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдПрдиреНрдХреЛрдб рдХрд┐рдП рдЧрдП рд╣реИрдВ рдФрд░ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╕рдЯреАрдХ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИрдВред рдпрд╣ рд╣реИ рдХрд┐, ASN.1 рдореЗрдВ рдкреВрд░реНрдгрд╛рдВрдХреЛрдВ рдХреЛ рдПрдирдХреЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХреБрдЫ рднреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ - рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдмрд╛рдЗрдЯ рдФрд░ рдмрд╛рдЗрдЯ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред



рдордВрдЯрд┐рд╕рд╛ рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдорд╛рди рд╣рдореЗрд╢рд╛ рдПрдХ рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреВрд░реНрдгрд╛рдВрдХ рд╣реЛрддрд╛ рд╣реИред рдпрд╣реА рд╣реИ, ASN.1 рдореЗрдВ рдПрдиреНрдХреЛрдбреЗрдб рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдордВрдЯрд┐рд╕рд╛ рд╣рдореЗрд╢рд╛ рдПрдХ рд╕рдХрд╛рд░рд╛рддреНрдордХ рд╕рдВрдЦреНрдпрд╛ рд╣реИред рдирдХрд╛рд░рд╛рддреНрдордХ рдлрд╝реНрд▓реЛрдЯрд┐рдВрдЧ-рдкреЙрдЗрдВрдЯ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рдПрдирдХреЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, ASN.1 рд╕реЗрд╡рд╛ рдСрдХреНрдЯреЗрдЯ (рдКрдкрд░ рджреЗрдЦреЗрдВ) рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдмрд┐рдЯ (рдмрд┐рдЯ 7) рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред



рдЖрдзрд╛рд░ рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдЧреБрдгрд╛рдВрдХ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдмрд╛рдЗрдЯреНрд╕ рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХреЗ рд░реВрдк рдореЗрдВ рдордВрдЯрд┐рд╕рд╛ рдХреЛ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣реА рд╣реИ, рдпрджрд┐ рджрд╢рдорд▓рд╡ рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдордВрдЯрд┐рд╕рд╛ 32639 рд╣реИ, рддреЛ рдПрдиреНрдХреЛрдбреЗрдб рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рджреЛ рдСрдХреНрдЯрд╛рдХрд╛рд░ 7F 7F 7F (32639 10 = 127 * 256 1 + 127 * 256 0 = 256 0 = рд╣реЛрдВрдЧреЗред 7 рдПрдл * рдПрдлрдПрдл 1 + 7 рдПрдл * рдПрдлрдПрдл 0 )ред



рджреНрд╡рд┐рдЖрдзрд╛рд░реА рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдореЗрдВ ASN.1 рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЗ рдЙрджрд╛рд╣рд░рдг:


  1. рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдВрдЦреНрдпрд╛ 0.15625 рд▓реЗрдВред рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЗрд╕реЗ рдЖрдзрд╛рд░ рдореЗрдВ рджреНрд╡рд┐рдЖрдзрд╛рд░реА рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд░реЗрдВрдЧреЗред рдЖрдзрд╛рд░ 2 рдореЗрдВ рдЗрд╕ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рдЧреБрдгрд╛рдВрдХ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдкрд╛рдП рдЬрд╛рдПрдВрдЧреЗ: 0.15625 10 = 1 * 2 -3 + 1 * 2 -5 ред рдпрд╣реА рд╣реИ, рд╣рдорд╛рд░реЗ рдкрд░реАрдХреНрд╖рдг рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд▓рд┐рдП рдордВрдЯрд┐рд╕рд╛ рдХрд╛ рдореВрд▓реНрдп M = 101 2 рд╣реЛрдЧрд╛ , рдФрд░ рдкреНрд░рддрд┐рдкрд╛рджрдХ -5 рд╣реЛрдЧрд╛ред рдЗрд╕ рдирдВрдмрд░ рдХреЗ рд▓рд┐рдП рд╕реЗрд╡рд╛ рдУрдХрдЯреЗрдЯ 1000 0000 2 = 80 16 рд╣реЛрдЧрд╛ ред рдШрд╛рддрд╛рдВрдХ рдорд╛рди рдПрдХ рдУрдХрдЯреЗрдЯ рдореЗрдВ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛: -5 = 123 - 128 рдФрд░ рдЗрд╕рд▓рд┐рдП рдореБрдЦреНрдп рд╕рдВрдЦреНрдпрд╛ 123 10 = 7 рдмреА 16 рд╣реЛрдЧреА , рдФрд░ рдШрдЯрд╛рдпрд╛ рд╕рдВрдЦреНрдпрд╛ 128 10 = 80 16 рд╣реЛрдЧреА ред рдлрд┐рд░ рдирдВрдмрд░ -5 рдХреЛ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдЕрдВрддрд┐рдо рдУрдХреНрдЯреЗрдЯ рдПрдлрдмреА 256 рд╣реЛрдЧрд╛ ред рдордВрдЯрд┐рд╕рд╛ рдореВрд▓реНрдп рднреА рдПрдХ рдУрдХрдЯреЗрдЯ рдореЗрдВ рдПрдиреНрдХреЛрдбреЗрдб рд╣реИ: 101 2 = 05 16 ред рдЕрдм рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдмреНрд▓реЙрдХ рдХреЗ рд╕рднреА рднрд╛рдЧреЛрдВ рдХреЛ рдЖрдзрд╛рд░ 2 рдореЗрдВ рдмрд╛рдЗрдирд░реА рдХреЛрдб рдореЗрдВ рдорд╛рди 0.15625 рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рд╣реИ, рдФрд░ рдкреВрд░реЗ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдмреНрд▓реЙрдХ рдореЗрдВ рддреАрди рдУрдХрдЯреЗрдЯ (80 рдПрдлрдмреА 05) 256 рд╢рд╛рдорд┐рд▓ рд╣реЛрдВрдЧреЗ ред
  2. рдЕрдм рд╣рдо рд╕рдорд╛рди рд╕рдВрдЦреНрдпрд╛ 0.15625 рдХреЛ рдПрдирдХреЛрдб рдХрд░реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмреЗрд╕ 8 рдореЗрдВред рдмреЗрд╕ 8 рдореЗрдВ рдЗрд╕ рдирдВрдмрд░ рдХреЗ рдЕрдкрдШрдЯрди рдЧреБрдгрд╛рдВрдХ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдкрд╛рдП рдЬрд╛рдПрдВрдЧреЗ: 0.15625 10 = 1 * 8 -1 + 2 * 8 -2 ред рдпрд╣реА рд╣реИ, рд╣рдорд╛рд░реЗ рдкрд░реАрдХреНрд╖рдг рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд▓рд┐рдП рдордВрдЯрд┐рд╕рд╛ рдХрд╛ рдорд╛рди M = 12 8 = (001 010) 2 рд╣реЛрдЧрд╛ (рдЬрдм 8-рджрд╢рдорд▓рд╡ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкреНрд░рддреНрдпреЗрдХ рдореВрд▓реНрдп рдХреЗ рд▓рд┐рдП рддреАрди рдЕрд▓рдЧ-рдЕрд▓рдЧ рдмрд┐рдЯреНрд╕ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрддреЗ рд╣реИрдВ)ред рдкреНрд░рддрд┐рдкрд╛рджрдХ -2 рд╣реЛрдЧрд╛ред рдЗрд╕ рдирдВрдмрд░ рдХреЗ рд▓рд┐рдП рд╕реЗрд╡рд╛ рдУрдХрдЯреЗрдЯ 1001 0000 2 = 90 256 рд╣реЛрдЧрд╛ ред рдШрд╛рддрд╛рдВрдХ рдорд╛рди рдХреЛ рдПрдХ рдСрдХреНрдЯреЗрдЯ рдореЗрдВ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЬрд╣рд╛рдВ рдореБрдЦреНрдп рдФрд░ рдШрдЯрд╛рдП рдЧрдП рд╕рдВрдЦреНрдпрд╛ рд╕реВрддреНрд░ рд╕реЗ рд╣реИрдВ: -2 = 126 - 128. рдЗрд╕рд▓рд┐рдП, рдШрд╛рддрд╛рдВрдХ рдорд╛рди -2 рдХреЛ рднрд░рдиреЗ рд╡рд╛рд▓рд╛ рдСрдХреНрдЯреЗрдЯ FE 256 рд╣реЛрдЧрд╛ ред рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдордВрдЯрд┐рд╕рд╛ рдореВрд▓реНрдп рднреА рдПрдХ рдУрдХрдЯреЗрдЯ 0 рдП 256 рдореЗрдВ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
  3. рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╣рдо рдЖрдзрд╛рд░ 16 рдореЗрдВ рд╕рдВрдЦреНрдпрд╛ 0.15625 рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рдЕрдкрдШрдЯрди рдХреЗ рдЧреБрдгрд╛рдВрдХ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдкрд╛рдП рдЬрд╛рдПрдВрдЧреЗ: 0.15626 10 = 2 * 16 -1 + 8 * 16 -2 ред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдордВрдЯрд┐рд╕рд╛ рдПрдо = 28 16 = (0010 1000) 2 рдФрд░ рдПрдХреНрд╕рдкреЛрдиреЗрдВрдЯ рдИ = -2 рдХреЗ рдореВрд▓реНрдп рдХреЗ рд▓рд┐рдП рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВред рдЕрдм рд╣рдо рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рд╢рд░реНрдд рд░рдЦрддреЗ рд╣реИрдВ: рдордВрдЯрд┐рд╕рд╛ рдХрд╛ рдорд╛рди "рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд" рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрд░реНрдерд╛рддреН, рдЗрд╕рдореЗрдВ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдХрдо рд╕реЗ рдХрдо рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЕрдВрдХреЛрдВ рдореЗрдВ рд╢реВрдиреНрдп рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдпрд╣ рднреА рдЕрдХреНрд╕рд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ "рдордВрдЯрд┐рд╕рд╛ рдХреЛ рд╡рд┐рд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП", рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рдЕрдВрддрд┐рдо рдХрдо рд╕реЗ рдХрдо 1 рдмрд┐рдЯ рд╣реИ, рддреЛ рдкреВрд░реА рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛рддреА рд╣реИ) рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╡рд┐рд╖рдо рд╣реИ рдХрд┐ 1 * 2 0 рдХреЛ рджреЛ рдХреА рд╢рдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ)ред "рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг" рдХреА рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдХреИрд╕реЗ рдкреВрд░реА рд╣реЛ рд╕рдХрддреА рд╣реИ? рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдореБрдЦреНрдп рддрд░реАрдХрд╛ рдПрдХ рдирдВрдмрд░ рдХреЗ рдПрдХреНрд╕рдкреЛрдиреЗрдВрдЯ рдХреЛ рдмрджрд▓рдирд╛ рд╣реИ, рдлреНрд▓реЛрдЯрд┐рдВрдЧ рдкреЙрдЗрдВрдЯ рдХреЛ рд╢рд┐рдлреНрдЯ рдХрд░рдирд╛ред 2 тАФ 1 ( / ) . 8 16 , 1 3 4 ( 8 3 , 16 4 ). 8 16 "" . " " : , F. ( ). M = N * 2 F . , 2 1 . 2 F F . / :
    1. 0010 1000;
    2. "" ( 3 ), 0000 0101, F = 3;
    3. 2 F , F = 3 ;

    ( "" ) :



    AC FE 05



ASN.1 , . , 10.



10 " ". 3 ( NR1, NR2 NR3) ISO 6093. , "" ISO 6093 тАФ ECMA-63, .



10 (01, 02 03 ), , . :


  1. , 0-9 ( 30-39 );
  2. ( 20);
  3. "." ( 2E);
  4. "," ( 2C);
  5. "E" ( 45), "e" ( 65);
  6. "-" ( 2D);
  7. "+" ( 2B);

( , , ASN.1 ).



:


  1. 1. NR1 "1" ( "+1").
  2. NR2 , :
    1. "1,"
    2. "+1.0"
    3. "1,000000"
    4. " 1.0" ( )

  3. 1 NR3. , . NR3 1 "+1,0+0" ("1.0+0" "."), .

ASN.1 "" :



, :



UPDATE:


  1. ASN.1 ( 2)
  2. ASN.1 ( 3, )

UPDATE #2:


рдЕрджреНрдпрддрди # 3: рд╢рд╛рдпрдж рдХрд┐рд╕реА рдХреЛ рдпрд╛рдж рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдБ рдЕрд╕рд▓реА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде C ++ ASN.1 рдХреЛрдбрд░ / рдбрд┐рдХреЛрдбрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИред рдФрд░ рдпрд╣рд╛рдБ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИ, рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдмрд┐рдирд╛ред

Source: https://habr.com/ru/post/In150757/


All Articles