李泽源

《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

计算机是如何工作的? ----李泽源相关推荐

  1. java开发入门实验报告_Java实验二实验报告 20135108 李泽源

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java 班级: 1351    姓名:李泽源   学号:20135108 成绩:              指导教师:娄嘉 ...

  2. 20135108李泽源 Java实验一

    实验一.Java开发环境的熟悉 实验内容 1. 使用JDK编译.运行简单的Java程序 2.使用Eclipse 编辑.编译.运行.调试Java程序 实验知识点 1. JVM.JRE.JDK的安装位置与 ...

  3. 实验三:跟踪分析Linux内核的启动过程 ----- 20135108 李泽源

    实验要求: 使用gdb跟踪调试内核从start_kernel到init进程启动 详细分析从start_kernel到init进程启动的过程并结合实验截图撰写一篇署名博客,并在博客文章中注明" ...

  4. 计算机学院李泽昊,中国美院动画系学生作品问鼎昂西动画节学生竞赛单元“水晶奖”...

    6月19日,昂西动画电影节官方传来好消息:中国美术学院影视与动画艺术学院动画系2020届本科毕业生李泽昊的毕业创作动画短片<海马>(Hippocampus)荣获昂西学生毕业创作单元&quo ...

  5. java海城同泽中学图书仓库管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署

    java海城同泽中学图书仓库管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署 java海城同泽中学图书仓库管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署 本源 ...

  6. 稚晖君官宣离开华为创业,被曝已获得天使投资,网友猜测来自李泽湘

    Pine 发自 凹非寺 量子位 | 公众号 QbitAI 前几天热议的离职创业传闻,稚晖君出面回应了:传言属实,已离开华为,准备创业. 至于大家备受关注的B站up主身份,稚晖君称不会全职做,但会填好之 ...

  7. 李青源:高清体验和带宽节省,瞄准方向深耕

    在LiveVideoStackCon 2018前夕,金山云资深产品专家李青源接受了LiveVideoStack的采访.他聊到了金山云在"视频+AI"和"编解码" ...

  8. 李泽湘教授给未来创业者的一封信

    李泽湘教授给未来创业者的一封信 亲爱的同学: 你好! 2020年春天起,一场突如其来的新冠疫情改变了你.我和世界上众多人群的生活和命运.我们不得不长期蜗居在自己熟悉又陌生的家中,在这方寸之间学习.工作 ...

  9. 【CCAI 2016】大疆李泽湘:智能机器人解决实际问题的路径

    8月26日至27日,在中国科学技术协会.中国科学院的指导下,由中国人工智能学会发起主办.中科院自动化研究所与CSDN共同承办的2016中国人工智能大会(CCAI 2016)在北京辽宁大厦盛大召开,这也 ...

最新文章

  1. 深度学习在自动驾驶感知领域的应用
  2. 安全自动化在于信任,而非技术
  3. mysql常用到的几个命令
  4. mysql 异常处理实例
  5. 终于有人把Java技术知识面试体系整理出来了,这些文档让你的面试稳如泰山
  6. 关系数据库、NoSQL和NewSQL数据库产品分类
  7. php微信支付接口开发程序(一)
  8. 怎么用pr(Premiere)给视频添加水印
  9. 画PCB四层板细节总结
  10. 强网杯2022·Crypto
  11. 制作启动U盘 —— 大白菜U盘启动盘制作工具V5.1
  12. Delphi6/7/2007获取类型信息
  13. 如何用postman实现接口自动化测试
  14. Swift:高级架构、流水线深度、内存延迟 转载
  15. OC基础 Block
  16. 【目标检测】YOLO系列——YOLOv1详解
  17. 利用Excel将百度地图搜索结果导出
  18. bugku web18 秋名山车神
  19. Linux应用(四)socket网络编程
  20. 【实践】PPT制作从入门到精通(含素材资源大全)

热门文章

  1. Newman基本使用
  2. dwz交互式弹窗处理
  3. 如何在lion系统下安装Xcode 3.2.x版本
  4. c语言 socket send,C语言中send()函数和sendto()函数的使用方法
  5. [论文阅读]:PP-YOLO: An Effective and Efficient Implementation of Object Detector
  6. J0ker的CISSP之路: How CISSP(1)
  7. iOS系统的优势和特性
  8. 乳腺仿体breast phantom的MATLAB实现及探讨
  9. centos安装python3.X,系统默认2.7.5
  10. 实现从淘宝定时抓取订单数据、打印电子面单并保存到ERP表中!