Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1209540
  • 博文数量: 398
  • 博客积分: 10110
  • 博客等级: 上将
  • 技术积分: 4055
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-23 20:01
个人简介

新博客http://www.cnblogs.com/zhjh256 欢迎访问

文章分类

全部博文(398)

文章存档

2012年(1)

2011年(41)

2010年(16)

2009年(98)

2008年(142)

2007年(100)

我的朋友

分类: Oracle

2007-12-24 22:40:57

Internal representation of the NUMBER datatype
非null数字的实际数据字节是以科学技术法表示的,以+0.123 * 102格式。第一个字节的最高位代表符号,符号位为正数设置,第一个字节的余下部分代表指数,接下来可以有最多20个字节用于存储有意义的数字(尾数)。
尾数的每个字节通常代表两个数字。
熟悉number内部表示最好的方法使用dump测试各种不同的数字,查看内部表示。
如:
SQL> select 111,dump(111) from dual;
       111 DUMP(111)
---------- ---------------------
       111 Typ=2 Len=3: 194,2,12
111存储格式如下:
规范化数字: +0.0111 * 10^4
符号位:          1
第一个字节:        194
尾数数字:   01,11
尾数字节:    2,12
SQL> select 1111,dump(1111) from dual;
      1111 DUMP(1111)
---------- ----------------------
      1111 Typ=2 Len=3: 194,12,12
1111存储格式如下:
Normalized number: +0.1111 * 10^4
符号位:          1
第一个字节:        194
尾数数字:   11,11
尾数字节:    12,12
SQL> select -111,dump(-111) from dual;
      -111 DUMP(-111)
---------- --------------------------
      -111 Typ=2 Len=4: 61,100,90,102
-111存储格式如下:
规范化数字: -0.0111 * 10^4
符号位:          0
第一个字节:        61
尾数数字:   01,11
尾数字节:    100,90,102
SQL> select -1111,dump(-1111) from dual;
     -1111 DUMP(-1111)
---------- -------------------------
     -1111 Typ=2 Len=4: 61,90,90,102
-1111存储格式如下:
规范化数字: -0.1111 * 10^4
符号位:          0
第一个字节:        61
尾数数字:   11,11
尾数字节:    90,90,102

 
阅读(917) | 评论(0) | 转发(0) |
0

上一篇:Julian days bug

下一篇:Oracle number类型

给主人留下些什么吧!~~