2)数据描述符
引入原因:主要针对向量、数组、阵列
数据描述符和标识符的区别
优点:有利于简化编译中的代码生成
2.向量数组数据表示
DO 40 I=10, 1000
40C(I) = A(I+5) +B(I)
没有向量,数组数据表示的机器上,采用变址操作实现。
在具有向量、数组数据表示的向量处理上只需一条指令:
向量加 A向量参数 B向量参数 C向量参数
对参加运算的每个源向量都应指出其基地址,位移量、向量长度等参数
3.堆栈数据表示
堆栈数据结构在编译和子程序和子程序调用中很有用,不少大型机乃至微型机都没有堆栈数据表示,具有堆栈数据表示的机器称为堆栈机器。
堆栈机器的特点:
有若干高速寄存器组成的硬件堆栈
有丰富的操作类指令
有力的支持高级语言程序的编译
有力的支持子程序的嵌套和递归调用
2.1.3引入数据表示的原则
存储器 一维顺序存储的线性结构
数据结构 多维离散结构
原则:
系统效率是否提高。即是否减少了实现时间和所需的存储空间
通用性和利用率是否高
综上,数据结构的发展先于机器的数据表示。
2.1.4浮点数尾数基值大小和下溢处理方法的选择
1.浮点数尾数基值的选择
在计算机机器字长相同时,用浮点数表示数学中的实数,比用定点数表示时能有更大的表示数范围。
阶码包含:阶符、阶码值
p+1位阶码部分中影响阶码值的仅有p位,在这种浮点数表示中,阶码的位数p主要影响两个可表示区的大小即可表示数的范围大小,而尾数的位数主要影响可表示区中能表示值的精度,当阶码位数一定时,尾数采用什么进制还会影响到数的可表示范围,精度及数在数轴上分布的离散程度。
阶码采用二进制,尾数的基值呢?