C程序设计——第一章:数据

一直想写C程序设计的相关文章,算是对多年来工作经验的总结,但是早前因为知识储备不够写不出来,慢慢的就淡忘了,最近在教孩子们C语言,突然想起曾经还有这个想法。

都是整数

为了研究方便,计算机科学把计算机分为若干层,当然分层的方法有很多种,每个人、每个教材都会从不同的角度,划出不同的层次。如果不考虑具体物理实现,单纯考虑编程语言可以做如下划分(肯定与不准确的地方,欢迎评论区指出):

层次说明具体实例
可视化编程把一切都抽象为鼠标和键盘的操作word,excle
脚本语言这个不熟,如果有相关专家,欢迎在评论区留言。Python,ASP,JSP等
标记语言这个也不熟,如果有相关专家,欢迎在评论区留言。html,xml
命令行(操作系统)以 Linux 为例,一切都被抽象为文件Linux
面向对象语言

存储和运算器被抽象为一个整体:“对象”。

其余部分,对程序员透明

C++,JAVA
结构化语言

存储抽象为数据。

运算器抽象为对数据操作。

其他部分(如:通用寄存器、协处理器等)对程序员透明。

C语言

汇编语言

运算器地址抽象为操作码。

剩余部分(如:存储、通用寄存器、协处理器等)抽象为地址和操作数

MIPS,LOONGARC,x86等架构的汇编指令系统
机器码(机器语言)

本身就是二进制数据:

运算器抽象为地址。

剩余部分(如:存储、通用寄存器、协处理器等)抽象为地址和操作数。

MIPS,LOONGARC,x86等架构的机器指令系统

计算机能存储、处理的数据都是整数,哪怕是浮点数,本质上也是通过整数来表示的。

二进制整数

由于计算机在物理上以数电为基础,但数字电路把元器件的状态划分成了两种,抽象成数字0和1,因此,计算机中所有的部件,都是以二进制的形式来抽象的。

计算机所处理的数据也存储在计算机的部件(存储)里,所以计算机中所有的数据都是二进制数据。

整数的范围

如下图,是一个4位10进制计数器,上面有一个按钮,每按一次,数字就会加 1,你一定知道,这个东西计数的最大值是 9999,不为别的,就因为这里只设计了4位数,再大,就显示不下了。

3d7c74d82e1842e2afba680cf8073575.jpeg

计算机内部的存储设计,跟这个计数器,有同样的困境,就是位数不能无限多。

计算机的存储设计,按照目前的工业标准,容量的最小单位是8位二进制,再大就是16位二进制、32位二进制、64位二进制。

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十三香炖猪肉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值