8.2. ¼ýÀÚ »ó¼ö(Numerical Constants)

½© ½ºÅ©¸³Æ®´Â Ưº°ÇÑ Á¢µÎ»ç³ª Ç¥±â¹ýÀÌ ¾ø´Ù¸é ¼ýÀÚ¸¦ 10Áø¼ö·Î ÇØ¼®ÇÕ´Ï´Ù. ¸¸¾à¿¡ ¼ýÀÚ ¾Õ¿¡ 0ÀÌ ÀÖ´Ù¸é 8Áø¼ö (8Áø¹ý)°í, 0xÀÌ ÀÖÀ¸¸é 16Áø¼ö(16Áø¹ý)ÀÔ´Ï´Ù. #ÀÌ µé¾î°£ ¼ýÀÚ´Â Áø¹ý#¼ýÀÚ·Î °è»êµË´Ï´Ù(ÀÌ ¿É¼ÇÀº ¹üÀ§ Á¦ÇÑÀÌ Àֱ⠶§¹®¿¡ À¯¿ëÇÏÁö ¾Ê½À´Ï´Ù).

¿¹ 8-3. ¼ýÀÚ »ó¼ö Ç¥±â¹ý:

#!/bin/bash
# numbers.sh: ¼ýÀÚ Ç¥½Ã¹ý.

# 10Áø¼ö
let "d = 32"
echo "d = $d"
# º°·Î Ưº°ÇÑ °Ô ¾ø³×¿ä.


# 8Áø¼ö: '0' ´ÙÀ½¿¡ ³ª¿À´Â ¼ýÀÚ
let "o = 071"
echo "o = $o"
# °á°ú´Â 10Áø¼ö·Î ³ªÅ¸³³´Ï´Ù.

# 16Áø¼ö: '0x'³ª '0X' ´ÙÀ½¿¡ ³ª¿À´Â ¼ýÀÚ
let "h = 0x7a"
echo "h = $h"
# °á°ú´Â 10Áø¼ö·Î ³ªÅ¸³³´Ï´Ù.

# ´Ù¸¥ Áø¹ý: Áø¼ö#¼ýÀÚ
# Áø¼ö´Â 2 ¿Í 36 »çÀ̰¡ ¿Ã ¼ö ÀÖ½À´Ï´Ù.
let "b = 32#77"
echo "b = $b"
#
# ÀÌ Ç¥±â¹ýÀº ¾ÆÁÖ Á¦ÇÑµÈ ¹üÀ§ÀÇ ¼ýÀÚ(2 - 36)¿¡¼­¸¸ µ¿ÀÛÇÕ´Ï´Ù.
                # ... 10 °³ÀÇ ¼ýÀÚ + 26 °³ÀÇ ¾ËÆÄºª ¹®ÀÚ = 36.
let "c = 2#47"  # ¹üÀ§ Ãʰú ¿¡·¯:
# numbers.sh: let: c = 2#47: value too great for base (error token is "2#47")
echo "c = $c"

echo

echo $((36#zz)) $((2#10101010)) $((16#AF16))

exit 0
# ÀÚ¼¼ÇÑ ¼³¸í °í¸¶¿ö¿ä. S.C.