北京大学Cousera学习笔记--3-计算导论与C语言基础-第一讲.计算机的基本原理-计算机怎么计算-数的二进制
思考问题
1、“数”在计算机中是如何表示的?
2、逻辑上“数”是怎么运算的?
3、物理上“数”的计算是怎么实现的?
从图灵机计算问题得出:
1、字母表中的符号越多(几进制),读入移动次数减少,但程序数据就越多
2、字母表中的符号越少,程序量会减少,但读入移动次数就越多
字母表与状态
1、字母表中符号的最优数量,可能是欧拉常数e(2.7182)取整为3
2、与具有两个电子状态的电子元件相比,具有三个状态的电子元件在制造上更困难,可靠性更低
十进制、二进制、十六进制
1、从右向左4位二进制是1位16进制,3位二进制是1未8进制数
2、十进制转化为二进制:除以2的上(取整)自后向前以此将余数加以汇集就是二进制
123--123/2=61 61/2=30 30/2=15----1101111----对应的二进制1111011
问题1答案:二进制表示
布尔代数:
基本逻辑运算:与、或、非
符合逻辑运算:同或、异或、与非、或非、与或非
与:都真为真
或:都假方为为假————F=A+B
非:
异或:相同为0假,相异为1真
同或:相同为真,相异为假

加法的运算:本位异或,进位与运算:不考虑进位--下面半加器

有进位的计算器--全加器--串联半加器

问题二答案:计算方法--布尔代数
问题三答案:布尔运算如何实现--电路
小结:
因为
1、参与运算的数,可以转化为二进制数
2、二进制数运算,可以运用基本的布尔运算实现
3、基本的布尔运算,都可以由电路实现
所以电路能算数--
题外篇:计算机的发展及分类
早期的计算机:手工计算器、机械计算器、计算机原型
现代计算机:电子管、晶体管、集成电路、超大规模集成电路
未来的发展:
过往是摩尔定律-单位面积上晶体管的数量每18个月就翻翻
现在的问题:
1、散热:晶体管密度和速度的增加,芯片会消耗更多电力,产生更多的热能
2、晶体管大小限制--不能无限变小--原子 任何纳米管和传统工艺都对这种情况没有办法
3、电泄露:晶体管体积的不断缩小-电泄露-影响计算能力
量子计算机:利用量子体系实现计算






北京大学Cousera学习笔记--3-计算导论与C语言基础-第一讲.计算机的基本原理-计算机怎么计算-数的二进制的更多相关文章
- 北京大学Cousera学习笔记--2-计算导论与C语言基础-第一讲.计算机的基本原理-图灵机
有限状态读写头从一个初始状态开始,对存储器上的输入数据进行读或写操作,经过有限步操作之后停机,此时存储器上的输出数据就是计算结果 (1) 图灵机的构成: 1.一条存储带:双向无限延长:上有一个个的小方 ...
- 北京大学Cousera学习笔记--6-计算导论与C语言基础--计算机的基本原理-认识程序设计语言 如何学习
1.是一门高级程序语言 低级语言-机器语言(二进制) 汇编语言-load add save mult 高级语言:有利于人们编写理解 2.C语言的规范定义非常的宽泛 1.long型数据长度不短于int型 ...
- 北京大学Cousera学习笔记--8-计算导论与C语言基础--C的运算部分
赋值运算符 1.两边类型不同:赋值时要进行类型转换,右边要转换到左边 2.长数赋值短数 最后的部分截断赋值给短数 3.短数赋给长数 数不变 4.符号位赋值 --计算机不区分符号位数字位,直接赋值 表达 ...
- 北京大学Cousera学习笔记--7-计算导论与C语言基础--基本数据类型&变量&常量
1.整形数据 1.基本型(int 4B).短整型(short 2B).长整型(long 4B) VC环境下 sizeof运算符用于计算某种类型的对象在内存中所占的字节数 ,用法:size(int) ...
- 北京大学Cousera学习笔记--5-计算导论与C语言基础--计算机的基本原理-设计程序
只要你认真的思考,你就会发现这个世界是如此的简单,正如我们想象的一样,正因为如此,我们的思考才更加的有价值 1.单词:关键字(有特定含义的):其他词用关键字定义出来 2.数和计算符号:数据类型+运算符 ...
- 北京大学Cousera学习笔记--4-计算导论与C语言基础--计算机的基本原理-程序运行的基本原理
已知:电路能完成计算 怎么计算:设计好很多个原子电路,需要的时候就把他们临时组装在一起--ENIAC 升级:冯诺依曼-EDVAC(现在的计算机都是) 1.通过某种命令来控制计算机.让计算机按照这种命令 ...
- [Coursera][计算导论与C语言基础][Week 10]对于“数组应用练习”课后习题的思考题的一些想法
(首先,关于Honor Code,我咨询过了Help Center,分享课后练习的思考题的想法是可以的(注意不是代码),但要标明引用,引用格式来源于https://guides.lib.monash. ...
- 北京大学Cousera学习笔记--1-学习规划
1.计算机导论与C语言基础 1>.计算导论:计算机的基本原理.计算机的发展趋势.程序运行的基本原理 2>.C程序设计:感性认识C程序.理性认识C程序:机构化的程序-函数.更多的数据结构 2 ...
- Coursera课程笔记----计算导论与C语言基础----Week 6
理性认识C程序 导论(Week 6) 明确学习进度 讲课内容 感性➡️理性➡️函数➡️指针等 作业练习 初级阶段 ➡️正常作业练习 C语言的由来 程序设计语言的分类 低级语言之机器语言 0010101 ...
随机推荐
- 推荐常用的移动端、PC端、小程序的UI框架
1.移动端UI库 ①.Vant UI 官方地址:https://youzan.github.io/vant/#/zh-CN/intro github地址:https://github.com/youz ...
- 通过 ContentResolver 读取联系人信息
1.首先动态获取 读取联系人信息权限 <1>配置文件中声明对应权限 ) } ] == PackageManager.PERMISSION_GRANTED) { readContact ...
- Torch功能点记录
1. Numpy矩阵转换Tensor: tensor_num = torch.from_numpy(numpy_arr)
- JavaScript(一)
JavaScript介绍 JavaScript是运行在浏览器端的脚步语言,JavaScript主要解决的是前端与用户交互的问题,包括使用交互与数据交互. JavaScript是浏览器解释执行的,前端脚 ...
- maven与eclipse集成
https://www.cnblogs.com/teach/p/5906425.html
- css 制作翻页布局
代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...
- 1#Two Sum(qsort用法)
void*空类型指针,就好像暂时还没有确定类型,任何类型都可以赋给它.但是具体操作时一定要确定类型(如下,比较时先转Node) cmp返回一定是int,有-1,0,1三种,如果是1则第一个数要放在第二 ...
- [LeetCode] Largest Triangle Area 最大的三角区域
You have a list of points in the plane. Return the area of the largest triangle that can be formed b ...
- Java课程寒假之开发记账本软件(Android版)之一
一.选择编译软件 最终选择了目前较为流行的Android Studio,网上的评价都比较偏向于好评. 安装的过程还算比较正常,没有什么太大的波折,解压安装虽然直接,但对于我这种每次装编译软件都有形形色 ...
- jdbc.properties+web.xml
1. jdbc.properties #\u8FDE\u63A5\u8BBE\u7F6E[左边是properties被IDE编码后的结果] jdbc.driverClassName=com.mysql ...