计算机是如何工作的? ----李泽源
李泽源
《Linux内核分析》MOOC课程 http://mooc.study.163.com/course/USTC-1000029000#/info
知识准备
冯诺依曼体系结构
核心思想
1.冯诺依曼是:数字计算机的数制采用二进制;计算机应该按照程序顺序执行。
2.采用二进制作为计算机数值计算的基础,以0、1代表数值。不采用人类常用的十进制计数方法,二进制使得计算机容易实现数值的计算。
3.程序或指令的顺序执行,即预先编好程序,然后交给计算机按照程序中预先定义好的顺序进行数值计算。
汇编语言的五种寻址模式
· 寄存器寻址 registermode: %寄存器 例如:%edx 访问寄存器edx
· 立即寻址 immediate: $数字 例如:$0x123 数值0x123
· 直接寻址 direct:数字 例如:0x123访问地址0x123指向的内存
· 间接寻址 indirect: (%寄存器) (%ebx) 例如:访问寄存器ebx中的地址指向的内存
· 变址寻址 displaced:偏移量(%寄存器) 4(%ebx):访问寄存器ebx中的地址再加4指向的内存;
几个重要的汇编指令
Example instruction |
What it does |
Pushl %eax |
Subl $4, %esp //栈顶指针减4,栈在向下生长一个位置 Movl %eax, (%esp) //将eax中的值放入栈顶指针指向的内存位置 |
Popl %eax |
Movl (%esp), %eax //从栈顶指针指向的内存中的值放入eax中 Addl $4, %esp //栈顶指针加4,栈在向上收缩 |
Call 0x12345 |
Pushl %eip //ip压栈 Movl $0x12345, %eip //将0x12345放入eip中 |
Ret |
Popl %eip //ip出栈 |
命令行截图:
生成的汇编代码截图:
图解代码:
计算机是如何工作的?
用户将编制好的程序通过输入设备送入计算机, 放在存贮器里保存起来,通过输 入设备向计算机发出执行程序的命令。 于是,在控制器的控制下,计算机便按照程序要求自动地进行工作。 计算机工作时,控制器从存贮器取出一条指令程序, 分析这条指令要求计算机进行哪一种操作,然后执行所规定的操作, 执行完一条指令后,再从存贮器中取出下一条指令,再分析和执行…… 这样重复进行,直到程序执行完毕。
转载于:https://www.cnblogs.com/jorilee/p/5224672.html
计算机是如何工作的? ----李泽源相关推荐
- java开发入门实验报告_Java实验二实验报告 20135108 李泽源
北京电子科技学院(BESTI) 实 验 报 告 课程:Java 班级: 1351 姓名:李泽源 学号:20135108 成绩: 指导教师:娄嘉 ...
- 20135108李泽源 Java实验一
实验一.Java开发环境的熟悉 实验内容 1. 使用JDK编译.运行简单的Java程序 2.使用Eclipse 编辑.编译.运行.调试Java程序 实验知识点 1. JVM.JRE.JDK的安装位置与 ...
- 实验三:跟踪分析Linux内核的启动过程 ----- 20135108 李泽源
实验要求: 使用gdb跟踪调试内核从start_kernel到init进程启动 详细分析从start_kernel到init进程启动的过程并结合实验截图撰写一篇署名博客,并在博客文章中注明" ...
- 计算机学院李泽昊,中国美院动画系学生作品问鼎昂西动画节学生竞赛单元“水晶奖”...
6月19日,昂西动画电影节官方传来好消息:中国美术学院影视与动画艺术学院动画系2020届本科毕业生李泽昊的毕业创作动画短片<海马>(Hippocampus)荣获昂西学生毕业创作单元&quo ...
- java海城同泽中学图书仓库管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
java海城同泽中学图书仓库管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署 java海城同泽中学图书仓库管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署 本源 ...
- 稚晖君官宣离开华为创业,被曝已获得天使投资,网友猜测来自李泽湘
Pine 发自 凹非寺 量子位 | 公众号 QbitAI 前几天热议的离职创业传闻,稚晖君出面回应了:传言属实,已离开华为,准备创业. 至于大家备受关注的B站up主身份,稚晖君称不会全职做,但会填好之 ...
- 李青源:高清体验和带宽节省,瞄准方向深耕
在LiveVideoStackCon 2018前夕,金山云资深产品专家李青源接受了LiveVideoStack的采访.他聊到了金山云在"视频+AI"和"编解码" ...
- 李泽湘教授给未来创业者的一封信
李泽湘教授给未来创业者的一封信 亲爱的同学: 你好! 2020年春天起,一场突如其来的新冠疫情改变了你.我和世界上众多人群的生活和命运.我们不得不长期蜗居在自己熟悉又陌生的家中,在这方寸之间学习.工作 ...
- 【CCAI 2016】大疆李泽湘:智能机器人解决实际问题的路径
8月26日至27日,在中国科学技术协会.中国科学院的指导下,由中国人工智能学会发起主办.中科院自动化研究所与CSDN共同承办的2016中国人工智能大会(CCAI 2016)在北京辽宁大厦盛大召开,这也 ...
最新文章
- 深度学习在自动驾驶感知领域的应用
- 安全自动化在于信任,而非技术
- mysql常用到的几个命令
- mysql 异常处理实例
- 终于有人把Java技术知识面试体系整理出来了,这些文档让你的面试稳如泰山
- 关系数据库、NoSQL和NewSQL数据库产品分类
- php微信支付接口开发程序(一)
- 怎么用pr(Premiere)给视频添加水印
- 画PCB四层板细节总结
- 强网杯2022·Crypto
- 制作启动U盘 —— 大白菜U盘启动盘制作工具V5.1
- Delphi6/7/2007获取类型信息
- 如何用postman实现接口自动化测试
- Swift:高级架构、流水线深度、内存延迟 转载
- OC基础 Block
- 【目标检测】YOLO系列——YOLOv1详解
- 利用Excel将百度地图搜索结果导出
- bugku web18 秋名山车神
- Linux应用(四)socket网络编程
- 【实践】PPT制作从入门到精通(含素材资源大全)
热门文章
- Newman基本使用
- dwz交互式弹窗处理
- 如何在lion系统下安装Xcode 3.2.x版本
- c语言 socket send,C语言中send()函数和sendto()函数的使用方法
- [论文阅读]:PP-YOLO: An Effective and Efficient Implementation of Object Detector
- J0ker的CISSP之路: How CISSP(1)
- iOS系统的优势和特性
- 乳腺仿体breast phantom的MATLAB实现及探讨
- centos安装python3.X,系统默认2.7.5
- 实现从淘宝定时抓取订单数据、打印电子面单并保存到ERP表中!