C2_数据与存储.pptVIP

  • 2
  • 0
  • 约3.25千字
  • 约 21页
  • 2018-05-14 发布于四川
  • 举报
计算机中存储数据的设备 在寄存器中存储数据 如何组织内存 地址—内存字节的编号 多字节联合使用存放一个数据 内存图实用画法 提 问 数据与数制 数制转换 数制转换:10→2 数制转换:2→10 数制转换:10→16 数制转换:16→10 数制转换:2→16 数制转换:0~15对应表 数制转换:16→2 计算机语言(一) 计算机语言(二) 计算机语言(三) C语言程序示例 C语言与程序设计 江汉大学数计学院 韩海 江汉大学数学与计算机科学学院 韩 海 数据与存储 内存(主存):存放正在运行的程序和数据,容量从几百KB到几百MB,数据通常被分块存放 CPU中的寄存器:每个寄存器能够存放固定长度的数据,寄存器数量很小,速度很快 外存(辅存):以文件的形式长期存放大量程序和数据,外存上的程序和数据只有调进内存后才能使用 不同的CPU中含有不同数量的寄存器,以二进制形式存放数据。每个寄存器有固定的名称和容量(二进制位数) 把二进制到AL中 1 0 0 1 1 1 1 0 例如,intel公司的奔腾CPU中有一个8位寄存器AL AL 1、内存以字节为基本单位 2、内存中有很多字节 3、存在的问题: 如何区分“这个字节”和“那个字节”? 一个字节的容量很小,一字节放不下的数据如何处理? (解答见后) 每个字节确定一个编号,从0编起,依次安排。结构上形成梯子状的内存图。 习惯上,画内存图时各个字节右边写地址; 0 1 2 3 4 5 6 内部填写其中存放的数据值; 0 0 0 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 0 1 1 0 1 1 0 1 1 0 1 1 1 0 0 1 1 0 0 0 1 0 0 0 0 0 1 0 1 1 0 0 0 0 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 0 1 0 0 0 将来还可以给各个字节命名。 c1 c2 a b t 一个字节只能存放8位二进制数据,为了存放16位二进制数,可以把连续两个字节联合在一起捆绑使用。 1000 1001 1002 1003 1004 1005 地址为1001的高字节 地址为1000的低字节 地址:1005 1004 1003 1002 类似地,可以把连续4个字节联合使用。 通常,把偶地址开始的连续两个字节联合使用,把地址是4的倍数起的连续4个字节联合在一起。 如图能够表示以下含义 1、在地址为1000的内存字节中存放了一个数据35; 2、地址1002和1003的两个字节联合使用存放数据1427; 3、从地址1004开始的连续4个字节联合使用存放数据2.71828。 注意:为了“对齐”,一般不把地址为1001和1002的两个字节联合使用。宁可让地址为1001的字节空闲。 1000 1001 1002 1004 35 1427 2.71828 1、当地址1002和1003的两个字节联合使用存放数据1427后,还可以“取地址1002字节的数据”吗? 2、这时如果命令计算机把数据28放到地址为1003的内存字节,会产生什么样的效果? 3、计算机怎么知道1002起的两个字节放的是整数,而1004起的4个字节放的是实数? 1000 1001 1002 1004 35 1427 2.71828 平时人们使用十进制数,因此要求从键盘等设备上人工录入数据时,以及在屏幕显示、纸张上打印数据时采用十进制 计算机内部(CPU、内存)只有“有电”、“无电”(即“高电位”和“低电位”)两种状态,只能使用二进制表示数据 矛盾 解决 键盘输入数据时采用十进制,计算机自动转换成相应二进制数;计算机内部用二进制形式对数据进行处理;处理的结果先转换成对应的十进制形式再送到屏幕、打印机等输出设备。 涉及计算机时,经常使用的数制有二进制、十进制、十六进制(八进制)。各进制之间存在固定的相互转换关系。仅考虑正整数之间的转换。 十进制 二进制 1 2 4 3 5 6 十六进制(八进制) 短除法:以2作为除数,每次记录得到的商和余数,没有余数则认为余数为0。反复除以2直到商为0,再把各次得到的余数按相反的次序写出即可。 2 1 3 7 ----- 1 2 6 8 ----- 0 2 3 4 ----- 0 2 1 7 ----- 1 2 8 ----- 0 2 4 ----- 0 2 2 ----- 0 2 1 ----- 1 0 例如:把十进制数137转换成二进制数的过程如右所示。最后得到的二进制数 从右往左

文档评论(0)

1亿VIP精品文档

相关文档