《计算机科学概论》—第2章2.1节二进制数值与记数系统

简介:

本节书摘来自华章出版社《计算机科学概论》一书中的第2章,第2.1节二进制数值与记数系统,作者[美]内尔·黛尔(Nell Dale)约翰·路易斯(John Lewis),更多章节内容可以访问云栖社区“华章计算机”公众号查看。

第2章 二进制数值与记数系统
我们在第1章中介绍了一些历史和常用术语,现在可以真正地开始探讨这些计算技术了。这一章叙述了计算机硬件用来表示和管理信息的方式——二进制数值。此外,这一章还把二进制数值置于各种记数系统中,帮助我们回忆这些初中学过的概念。虽然你可能已经知道了很多关于二进制数的概念,但是你也许从来没有意识到自己知道这些。所有记数系统的规则都一样,我们只不过是回顾那些基本概念,并把它们应用到新的基数上。理解了二进制数值,就为理解计算系统如何使用二进制记数系统实现它们的任务做好了准备。
目标
学完本章之后,你应该能够:

  • 区分数字分类。
  • 描述位置记数法。
  • 把其他基数的数字转换成十进制数。
  • 把十进制数转换成其他基数的数字。
  • 描述基数2、8和16之间的关系。
  • 解释以2的幂为基数的计算的重要性。

2.1 数字与计算
数字对计算至关重要。除了使用计算机执行数字运算以外,所有使用计算机存储和管理的信息类型最终都是以数字形式存储的。在计算机的最底层,所有信息都只是用数字0和1存储的。因此,在开始研究计算机之前,首先需要探讨一下数字。
首先,回忆一下数字的分类,数字包括有自然数、负数、有理数、无理数等,它们在数学上很重要,但对理解计算却没有什么用。下面简短浏览一下相关的分类定义。
先定义一个总括的概念——数字。数字是属于抽象数学系统的一个单位,服从特定的顺序法则、加法法则和乘法法则。也就是说,数字表示一个值,可以对这些值施加某些算术运算。
现在,我们对数字进行分类。自然数是0和通过在0上重复加1得到的任何数,用于计数。负数是小于0的数,在相应的正数前加上负号即为负数。整数是所有自然数和它们的负数。有理数包括整数和两个整数的商,也就是说,任何有理数都可以被表示为一个分数。
**数字(number):抽象数学系统的一个单位,服从算术法则。
自然数(natural number):0或通过在0上重复加1得到的任何数。
负数(negative number):小于0的数,是在相应的正数前加上负号得到的数。
整数(integer):自然数、自然数的负数或0。
有理数(rational number):整数或两个整数的商(不包括被0除的情况)。**
这一章的重点是自然数以及在各种记数系统中如何表示它们。在讨论中,我们介绍了所有记数系统之间的关系。在第3章中,我们将分析负数和有理数的计算机表示法以及如何用数字表示其他形式的数据,如字符和图像。
本章中的部分资料可能是你所熟悉的。当然,一些基本概念是你应该知道的。一些基本的记数和运算规则是你经常使用的,所以你可能已经掌握了。本章的目标之一是让你回忆起这些基本规则,向你展示它们是如何应用到各个记数系统中的。这样,计算机使用二进制数值1和0来表示信息的思想就不那么难理解了。

相关文章
|
机器学习/深度学习 数据采集 TensorFlow
使用Python实现深度学习模型:智能健康监测与预警
使用Python实现深度学习模型:智能健康监测与预警
1043 10
|
Web App开发 负载均衡 安全
UE像素流送服务器规格网页云推流
本文详细解答了像素流送技术及其与实时云渲染的区别,并探讨了像素流送所需的服务器规格。像素流送技术使虚幻引擎应用能在云端运行并通过WebRTC将音视频流传输至终端设备,用户可通过键盘、鼠标等与应用互动。尽管两者在功能上相似,实时云渲染在视频流稳定性、长时间运行稳定性、端口安全、便捷性和兼容性等方面具有显著优势。文章还分析了影响服务器配置的因素,如并发数和显卡数量,最后介绍了实时云渲染网页推流的使用方法,强调其简便性和广泛适用性。
582 4
UE像素流送服务器规格网页云推流
File类的基本使用【 File类+IO流知识回顾①】
这篇文章回顾了Java中File类的基本使用,包括创建File对象、获取文件数据信息、判断文件存在与否、创建和删除文件目录,以及遍历文件目录的方法。
File类的基本使用【 File类+IO流知识回顾①】
|
API 数据处理 开发者
Polars中的急性与惰性API:性能优化与数据处理策略
Polars中的急性与惰性API:性能优化与数据处理策略
186 1
|
Python
都2024年了,还不知道如何选本地Python开发环境管理工具
文章介绍了几种Python开发环境管理工具,包括Virtualenv、Pipenv和Anaconda,并推荐了Pipenv和Anaconda,解释了它们的安装和使用方法,帮助读者选择适合自己的工具来管理Python开发环境。
971 0
|
存储 Java 数据库
每日大厂面试题大汇总 —— 今日的是“顺丰-后端开发-一面”
文章汇总了顺丰后端开发一面的面试题目,涵盖了Java虚拟机内存模型、HashMap与ConcurrentHashMap的区别、Spring框架设计模式、SpringBoot与SpringMVC差异、Nacos注册中心原理、Seata分布式架构、MySQL事务隔离级别、数据库死锁问题解决方法、乐观锁实现方式、HBASE底层设计、BIO与NIO区别、以及为何不使用现有开源框架而选择自建平台等问题。
122 0
VS Code 中文乱码及编码格式问题全解
VS Code 中文乱码及编码格式问题全解
4321 0
阿里云域名实名认证需要多长时间通过?
阿里云域名实名认证通常在1天内完成,经测试一般10多分钟即可通过,最慢3-5个工作日。如果你的阿里云账号下有已经通过实名认证的域名信息模板,那么域名实名认证的时间会更快一些,如果是阿里云新账号,之前没有注册过域名,那么填写域名信息模板并等待实名认证,时间就会稍微多一些
|
Java 网络安全 API
Java一分钟之-JavaMail:发送电子邮件
本文介绍了使用JavaMail API发送电子邮件的步骤,包括环境准备、依赖引入、基本配置和代码示例。通过添加Maven或Gradle依赖,设置SMTP服务器信息并实现Authenticator,可以创建和发送邮件。同时,文章列举了SMTP认证失败、连接超时等常见问题及其解决方案,并提出了安全与最佳实践建议,如启用SSL/TLS、避免硬编码密码和妥善处理异常。
2929 0