回答:
1)bcの数字にはスケールがあります。数値のスケールをスケール係数と混同しないでください。同じ世界の「スケール」は、数値のスケールを照会する関数として、またはスケール係数を設定するパラメーターとして使用されます。
echo "scale=scale(1.1);11/10" | bc will return 1.1
2)スケール係数は、操作を行うときに小数点の右側に保持される桁数を決定します。sが現在のスケール係数、saが第1オペランドaのスケール、sbが第2オペランドbのスケールの場合、結果は次のように切り捨てられます。
scale of result
a+b max(sa,sb)
a-b max(sa,sb)
a*b min(sa+sb , max(s,sa,sb))
a/b s
a%b so that a = b*quotient + remainder; remainder has sign of a
a^b min(sa×|b|, max(s,sa)); b must be integer
sqrt(a) max(s,sa)
3)元々、bcはdcのプリプロセッサでした。現在、多くのシステムで、bcはスタンドアロンプログラムです。
echo "scale=4; 1/8" | bc