рдмрд╢ рдкрд░ рдмреНрд░реЗрдирдлрдХ рджреБрднрд╛рд╖рд┐рдпрд╛

рд╣рд╛рд▓ рд╣реА рдореЗрдВ, рдЧреВрдврд╝ рднрд╛рд╖рд╛ рдмреНрд░реЗрдирдлрдХ рдХреА рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдЧрддрд┐ рдкрдХрдбрд╝ рд░рд╣реА рд╣реИред рдмреНрд░реЗрдирдлрдХ рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рдЖрд╡реЗрджрдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЕрдВрдХрдЧрдгрд┐рдд рдореЗрдВ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдЬреНрдпрд╛рдорд┐рддреАрдп рдкреНрд░рдЧрддрд┐ рдореЗрдВ рднреА рдмрдврд╝ рд░рд╣реА рд╣реИред Android рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╛рди рд╕реНрдерд┐рддрд┐ред



рдЖрдЬ рдореИрдВрдиреЗ рдЗрд╕ рднрд╛рд╖рд╛ рдореЗрдВ рдЕрдкрдирд╛ рдкрд╣рд▓рд╛ рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИред рдореИрдВ рдПрдХ рдЯреЛрд╕реНрдЯрд░ рдкрд░ рдПрдХ рдЦреБрд╢ NetBSD рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣реВрдВ, рдФрд░ рдореИрдВ рдЗрдВрдЯрд░рдиреЗрдЯ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реВрдВред рдЗрд╕рд▓рд┐рдП, рдореИрдВ рдмреНрд░реЗрдирдлрдХ рдкрд░ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХрд╛ рд▓рд╛рдн рдирд╣реАрдВ рдЙрдард╛ рд╕рдХрд╛ред



рдХреЗрд╡рд▓ рдПрдХ рд╣реА рд░рд╛рд╕реНрддрд╛ рдерд╛ - рджреБрднрд╛рд╖рд┐рдпрд╛ рдЦреБрдж рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдПред рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╕реЗ рдХреЗрд╡рд▓ рдмреИрд╢ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдереЗред



 $ рдмрд┐рд▓реНрд▓реА bf.sh
 #! / рдмрд┐рди / рдмреИрд╢
 C = "s [0] = 0; p = 0;"
 рдЬрдмрдХрд┐ рдкрдврд╝рд╛ -n1 c;  рдорд╛рдорд▓реЗ рдореЗрдВ $ c рдХрд░реЗрдВ
	 \ +) C = "$ C s [\ $ p] = \ $ ((\ $ {s [\ $ p]} + 1));" ;;;
	 \ -) C = "$ C s [\ $ p] = \ $ ((\ $ {s [\ $ p]} - 1));" ;;;
	 \>) рд╕реА = "$ рд╕реА рдкреА = \ $ (($ $ рдкреА + 1));" ;;;
	 \ <) рд╕реА = "$ рд╕реА рдкреА = \ $ (($ $ рдкреА -1));" ;;;
	 \;) C = "$ C рдкреНрд░рд┐рдВрдЯрдл \\\\\ $ (printf '% 03o' \ $ {s [\ $ p]});" ;;;
	 \,) C = "$ C рдкрдврд╝рд╛ -n1 c; s [\ $ p] = \` рдкреНрд░рд┐рдВрдЯрдлрд╝ '% d' \ "\" $ $ \ "\" ;;;
	 [[] C = "$ C рдЬрдмрдХрд┐ [[\ $ {s [\ $ p]}> реж]]; рдХрд░" ;;
	 \]) рд╕реА = "$ рд╕реА рдХрд┐рдпрд╛;";
 esac;  рдХрд┐рдпрд╛ <$ 1; 
 eval $ рд╕реА

 $ рдмрд┐рд▓реНрд▓реА рд╣реИрд▓реЛред рдмреА
 +++++++++++ [> ++++++++++++++++++++++++++++ <<<< -]> ++
 ред>ред +ред ++++++++ +++ред ++ ++ред << +++++++++++++++++++ред ++ ++ред
 ------.-------->> +>ред

 $ ./bf.sh рд╣реЗрд▓реЛ.рдмреА
 рдирдорд╕реНрддреЗ рд╡рд┐рд╢реНрд╡!



All Articles