рдЬрдм IA-32 рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдкрд░ AMD рдХреЗ рдкреНрд░рднрд╛рд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрддреЗ рд╣реИрдВ, рддреЛ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдореБрдЭреЗ рдпрд╛рдж рд╣реИ рдХрд┐ REX рдЙрдкрд╕рд░реНрдЧ рдФрд░ 64-рдмрд┐рдЯ рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЛрдб рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рд╣реИред рдФрд░ рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ "рд╕рдХрд╛рд░рд╛рддреНрдордХ" рдкреНрд░рднрд╛рд╡ рд╣реИ рдЬрд┐рд╕рдиреЗ IA-32 рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдпрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЕрдиреНрдп рджрд┐рд▓рдЪрд╕реНрдк рдмрджрд▓рд╛рд╡ рдереЗ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддрд╛ред
рд▓рдВрдмреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдХрд╛рд░рдг, IA-32 рдХрдорд╛рдВрдб рд╕рд┐рд╕реНрдЯрдо рдХреА рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдПрдХ рдЖрд░реНрдХ-рдХреЙрдореНрдкреНрд▓реЗрдХреНрд╕ рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рдмрджрд▓ рдЧрдИ рд╣реИ (рдЬреЛ рдЕрдХреЗрд▓реЗ рдЙрдкрд╕рд░реНрдЧ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ)ред рд▓реЗрдЦ рдореЗрдВ рдХреБрдЫ рдбрд┐рдХреЛрдбрд┐рдВрдЧ рд╕рдорд╕реНрдпрд╛рдУрдВ рдФрд░ рдЙрдирдХреЗ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реБрдП "рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдбрд┐рд╕реНрд╕реЗрдореНрдмрд▓рд░ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ?" рдФрд░ "рдЖрдИрдП -32 рдХреЛрдб рдпрд╛ рд╕рд┐рдорд┐рдХреНрд╕ рдбрд┐рдХреЛрдбрд░ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рд╕реЗ рдХреИрд╕реЗ рдирд┐рдкрдЯреЗрдВ" , рдореИрдВ рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рддрдереНрдпреЛрдВ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдирд╛ рднреВрд▓ рдЧрдпрд╛ред IA-32 рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрднрд╡ рд▓рдВрдмрд╛рдИ 15 рдмрд╛рдЗрдЯреНрд╕ рд╣реИред рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдореЗрдВ рдХрдИ рдЙрдкрд╕рд░реНрдЧ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЙрдирдХреА рд╕рдВрдЦреНрдпрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЗрд╡рд▓ рдирд┐рд░реНрджреЗрд╢ рдХреА рд▓рдВрдмрд╛рдИ рдкрд░ рд╕реНрдерд┐рддрд┐ рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд рд╣реЛрддреА рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдПрдХ рд╣реА рдЙрдкрд╕рд░реНрдЧ рдХрдИ рдмрд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдРрд╕реЗ рдЙрдкрд╕рд░реНрдЧ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЗрд╕ рдирд┐рд░реНрджреЗрд╢ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрди рд╕рднреА рдХреЛ рдмрд╕ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдХреЛ рджрд░реНрд╢рд╛рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЙрджрд╛рд╣рд░рдг
NOP
рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдиреЛ рдУрдкреЗрд╢рди рдПрдХ рдирд┐рд░реНрджреЗрд╢ рд╣реИ рдЬреЛ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
0x90
)ред
0x66 0x66 0x66 0x66 0x66 0x66 0x66 0x66 0x66 0x66 0x66 0x66 0x66 0x66 0x90
- рдпрд╣ рднреА рдПрдХ
NOP
рдирд┐рд░реНрджреЗрд╢ рд╣реИ, рд╕рднреА 14
0x66
рдЙрдкрд╕рд░реНрдЧреЛрдВ
0x66
рдХреЗрд╡рд▓ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдпрд╣, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдПрдХ рдмрд╣реБрдд рд╣реА рдЕрдЬреАрдм рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рдХреЛрдИ рджреВрд░ рдирд╣реАрдВ рд╣реЛ рд░рд╣рд╛ рд╣реИред рдФрд░ рдХреБрдЫ рд╕рдВрдХрд▓рдХ рдЖрдорддреМрд░ рдкрд░ рдЙрдкрд╕рд░реНрдЧреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЛрдб рд╕рдВрд░реЗрдЦрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕ рдкрд░ рдлреВрд▓ рдЦрддреНрдо рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рдЬрд╛рдореБрди рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред
рдХрдИ рд╡рд░реНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП, рдЗрдВрдЯреЗрд▓ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдореЗрдВ
BSR
рдирд┐рд░реНрджреЗрд╢ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рдкрд╣рд▓реА рдмрд╛рд░ рдЗрдВрдЯреЗрд▓ 80386 рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ред рдпрд╣ 1 рдХреЗ рдмрд░рд╛рдмрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдЯ рдХрд╛ рдХреНрд░рдо рд╕рдВрдЦреНрдпрд╛ рдкрд╛рддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдВрдЦреНрдпрд╛
0x11aa00bb
рдпрд╣ рдирд┐рд░реНрджреЗрд╢ 28 рдХреЛ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧрд╛ред
рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдПрдирдХреЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
рджрд┐рд▓рдЪрд╕реНрдк рдХреБрдЫ рднреА рдирд╣реАрдВ:
0x0F 0xBD
рдФрд░ рдореЙрдб рдЖрд░ / рдПрдо рдмрд╛рдЗрдЯреНрд╕ рдСрдкрд░реЗрдВрдб рдХреЗ рд▓рд┐рдПред
рдЕрдм рдЗрд╕ рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдореЗрдВ рдХреБрдЫ рдЙрдкрд╕рд░реНрдЧ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ ... рдЪрд▓реЛ
0xF3
рдХрд╣рддреЗ рд╣реИрдВред рдпрд╣ рдПрдХ рдорд╛рдиреНрдп рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╣реЛрдЧрд╛, рдЙрдкрд╕рд░реНрдЧ рдХреЛ рдХреЗрд╡рд▓ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рдВрдЪрд╛рд▓рди рдпрд╛ рдЗрдирдкреБрдЯ / рдЖрдЙрдЯрдкреБрдЯ рдирд┐рд░реНрджреЗрд╢реЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рдХреЛрдИ рдЕрдкрд░рд╛рдз рдирд╣реАрдВред
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдПрдПрдордбреА рдХреЗ рд╕рд╛рдерд┐рдпреЛрдВ рдиреЗ рдХреНрдпрд╛ рдХрд┐рдпрд╛?
рдХреБрдЫ рд╢реЛрдз
0xF3
рдмрд╛рдж, рдЙрдиреНрд╣реЛрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдореЗрдВ
BSR
рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рд╛рде
0xF3
рдЙрдкрд╕рд░реНрдЧ рдХрд╛ рд╕рдВрдпреЛрдЬрди рдмрд╣реБрдд рд╣реА рджреБрд░реНрд▓рдн рд╣реИ, рдФрд░ рдЙрдиреНрд╣реЛрдВрдиреЗ рдЗрд╕ рд╕рдВрдпреЛрдЬрди рдХреЛ рдПрдХ рдирдП рдирд┐рд░реНрджреЗрд╢ -
LZCNT
рдХреЛ рдлрд┐рд░ рд╕реЗ рдЕрд╕рд╛рдЗрди рдХрд┐рдпрд╛, рдЬреЛ рдЕрдЧреНрд░рдгреА рд╢реВрдиреНрдп рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИред
32-рдмрд┐рдЯ рдореЛрдб рдореЗрдВ рд╕рдорд╛рди рдЗрдирдкреБрдЯ рдирдВрдмрд░
0x11aa00bb
, рдпрд╣ рдирд┐рд░реНрджреЗрд╢ 28 рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ 3 рдкрд░ рд▓реМрдЯреЗрдЧрд╛ред
рдпрд╣ рдирд┐рд░реНрджреЗрд╢ ABM (рдПрдбрд╡рд╛рдВрд╕реНрдб рдмрд┐рдЯ рдореИрдирд┐рдкреБрд▓реЗрд╢рди) рдХрдорд╛рдВрдб рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛, рдЬрд┐рд╕рдореЗрдВ рджреЛ рдирд┐рд░реНрджреЗрд╢
LZCNT
рдФрд░
POPCNT
(рдЗрд╕ рдХрдорд╛рдВрдб рдореЗрдВ, рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдХреБрдЫ рднреА рдмреБрд░рд╛ рдирд╣реАрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ), рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ CPUID рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдмрд┐рдЯ рд╣реИред
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЖрдк рдЗрд╕ рдирд┐рд░реНрджреЗрд╢ рдХреЛ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЕрдХреНрд╖рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред
рдкрд╣рд▓рд╛
ABM
рдирд┐рд░реНрджреЗрд╢ рд╕реЗрдЯ рдмрд╛рд░реНрд╕рд┐рд▓реЛрдирд╛ рдорд╛рдЗрдХреНрд░реЛрдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ AMD рдкреНрд░реЛрд╕реЗрд╕рд░ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдерд╛ред рдЗрдВрдЯреЗрд▓ рдиреЗ Nehalem рдкреНрд░реЛрд╕реЗрд╕рд░ рдЗрдВрд╕реНрдЯреНрд░рдХреНрд╢рди рд╕реЗрдЯ рдореЗрдВ
POPCNT
рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдЬреЛрдбрд╝рд╛ рд╣реИред рдФрд░ рдХреЛрдИ рд╕реЛрдЪрддрд╛ рд╣реИ рдХрд┐ рдЗрдВрдЯреЗрд▓ рд╡рд╣рд╛рдВ рд░реБрдХ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рдирд╣реАрдВред
LZCNT
рдирд┐рд░реНрджреЗрд╢ Haswell рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ред
рдпрд╣ рдмреБрд░рд╛ рдХреНрдпреЛрдВ рд╣реИ?
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд┐рдЫрдбрд╝реЗ рд╕рдВрдЧрддрддрд╛ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдЙрд╕рдХреА рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕рдВрдкрддреНрддрд┐ рдирд╣реАрдВ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдПрдПрдордбреА рдЕрдиреБрд╕рдВрдзрд╛рди рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЗрд╕ рдЙрдкрд╕рд░реНрдЧ рдХреЗ рд╕рд╛рде
BSR
рдирд┐рд░реНрджреЗрд╢ рдЕрддреНрдпрдВрдд рджреБрд░реНрд▓рдн рд╣реИред рдФрд░ рдлрд┐рд░ рднреА, рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ, рдРрд╕реА рд╕реНрдерд┐рддрд┐ рд╕рдВрднрд╡ рд╣реИред
рд▓реЗрдХрд┐рди рд▓реЗрдЦ рдЙрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдм рдФрд╕рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рд╕реЗ рдереЛрдбрд╝рд╛ рд╣рдЯрдХрд░ рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреА рдЬрд░реВрд░рддреЛрдВ рдХреЛ рджреЗрдЦреЗрдВред
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рдЬреНрдпрд╛рджрд╛рддрд░ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╕реНрдЯреИрдХ рдЪрд┐рдк рдХреЛ рдкрдХрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рдкрд░ рд▓рд┐рдЦрд╛ рдФрд░ рдбреАрдмрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рддреЛ рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди рд╕рд┐рдореБрд▓реЗрд╢рди рдХреА рдЧрддрд┐ рдФрд░ рд╕рдЯреАрдХрддрд╛ рдХреЛ рдХреИрд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдмреЗрд╢рдХ, рд╣рд░ рдХреЛрдИ рдЬрд▓реНрджреА рд╕реЗ рдЬрд▓реНрджреА рдореЙрдбрд▓рд┐рдВрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИред рдПрдХ рдкрд╛рд░рдВрдкрд░рд┐рдХ рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреА рдЧрддрд┐ рдХрднреА рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рд╣рд░ рдХреЛрдИ рд╕реЗрдХрдВрдб рдореЗрдВ BIOS рдХреЛ рд▓реЛрдб рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рдФрд░ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдорд┐рдирдЯреЛрдВ рдореЗрдВред рдЗрд╕ рдХрд╛рд░рдг рд╕реЗ, рдореЙрдбрд▓ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИ, рдПрдХ рдЕрдиреБрдХреВрд▓рди рдмрд╛рдЗрдирд░реА рдЕрдиреБрд╡рд╛рджрдХ рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рдХреЗ рд╕рдордп рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рднреА рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ! рд╡реЗ рдореЗрдЬрдмрд╛рди рдкрд░ рдЕрддрд┐рдерд┐ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕реАрдзреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рдЬреЛ рдХрдИ рдмрд╛рд░ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рддреЗ рд╣реБрдП рдореЙрдбрд▓ рдХреЛ рдЬрдЯрд┐рд▓ рдмрдирд╛рддрд╛ рд╣реИред рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдкрдврд╝реЗрдВ рд▓реЗрдЦ "рдорд╛рдЗрдХреНрд░реЛрдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╕рд┐рдореБрд▓реЗрд╢рди рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред рдЧрд┐рдпрд░рдмреЙрдХреНрд╕ ред тАЭ
рдпрд╣ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рджреБрднрд╛рд╖рд┐рдпрд╛ рдпрд╛ рдЕрдиреБрд╡рд╛рджрдХ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рд╕рдорд╕реНрдпрд╛рдПрдВ рдЙрддреНрдкрдиреНрди рд╣реЛ рд╕рдХрддреА рд╣реИрдВред рди рддреЛ
LZCNT
, рдФрд░ рди рд╣реА, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛,
BSR
VM рдореЙрдирд┐рдЯрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрдЙрдЯрдкреБрдЯ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИред
рдпрд╣ рдЗрд╕ рддрдереНрдп рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдкрдХреЛ рдПрдХ рд╣реИрд╕рд╡реЗрд▓ + рдкреНрд░реЛрд╕реЗрд╕рд░ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдПрдХ рдкреБрд░рд╛рдиреЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд░, рдЬреИрд╕реЗ рдХрд┐ рд╕реИрдВрдбреА рдмреНрд░рд┐рдЬ, рдЖрдк
LZCNT
рдмрдЬрд╛рдп
BSR
LZCNT
рд╕рдХрддреЗ
LZCNT
ред рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдпрджрд┐ рдЖрдк рдХреБрдЫ рд╕рд░рд▓ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
LZCNT
рд╕рд╛рде рдПрдХ рдореЗрдЬрдмрд╛рди рдкрд░ рдХреНрд╡рд╛рд░реНрдХ , рддреЛ рдЖрдк рд╡рд┐рдкрд░реАрдд рдкреНрд░рднрд╛рд╡ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ
LZCNT
рдЬреЛрдЦрд┐рдо
LZCNT
-
LZCNT
рдмрдЬрд╛рдп
LZCNT
ред
рдЙрдиреНрд╣реЛрдВрдиреЗ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди рддреЛрдбрд╝ рджрд┐рдпрд╛!
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ - рдкреГрд╖реНрда рдХрд╛ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдХрд░реЗрдВред
рдореМрдЬреВрджрд╛ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди рддрдВрддреНрд░ рдЖрдкрдХреЛ рд╕реНрдореГрддрд┐ рдкреГрд╖реНрдареЛрдВ рдХреЗ рд╕реЗрдЯ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдЕрддрд┐рдерд┐ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рддрдХ рдкрд╣реБрдВрдЪ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдо рдХреЗрд╡рд▓ рдЙрди рдкреГрд╖реНрдареЛрдВ рдкрд░ рд╕реНрдерд┐рдд рдХреЛрдб рдХреЗ рдкреНрд░рддреНрдпрдХреНрд╖ рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЕрдиреБрдорддрд┐ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ
LZCNT
рдЕрдиреБрджреЗрд╢ рдПрдирдХреЛрдбрд┐рдВрдЧ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред рдФрд░ рдЗрди рдХрдорд╛рдВрдбреНрд╕ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рдирдП рдкреЗрдЬ рдХреЛ рдкреНрд░реА-рд╕реНрдХреИрди рдХрд░реЗрдВред
рдЗрд╕ рддрд░рд╣ рдХреЗ рдмрджрд▓рд╛рд╡, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЙрддреНрдкрд╛рджрдХрддрд╛ рдореЗрдВ рдЧрд┐рд░рд╛рд╡рдЯ рдФрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрддрдиреЗ рд╕рд░рд▓ рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдЗрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рдирдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рднрд╛рд╡ рд╣реИред
PS рдРрд╕рд╛ рдирд┐рд░реНрджреЗрд╢ рдХреЗрд╡рд▓ рдПрдХ рд╣реА рдирд╣реАрдВ рд╣реИред BMI1 рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде , Intel рдиреЗ рдПрдХ рдирдпрд╛
TZCNT
рдирд┐рд░реНрджреЗрд╢ рдЬреЛрдбрд╝рд╛, рдЬреЛ
BSF
рдЯреАрдо рдХреЗ рд╕рд╛рде рднреА рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред