CPU中的程序是怎么运行起来的(预告篇)

作者: 良知犹存

总述

最近一位朋友问,开发的代码是怎么运行起来的,就开始给他介绍代码的预编译、汇编、编译、链接然后到一般的文件属性,再到代码运行。但是大佬问了一句,CPU到底是怎么执行到每一个逻辑的,就讲了哈CPU的架构。这是时候真的有些迷了,虽然有模电数电的底子,但是自己都说迷糊了,汇编怎么对应到机器码再到怎么执行每一个逻辑。

所以想了想,可以写一篇文章,从嵌入式开发的工作中去描述一下CPU的代码执行的过程。虽然网上也有很多人讲这个过程,也想用自己的视角去介绍一下。所以就花了三天时间把《CODE》这本书啃完,然后准备写篇文章。不过今天由于时间问题,就不写了,明天写具体看书以及自己的经验去描述CPU的代码运行情况。

作者:良知犹存

转载授权以及围观:欢迎添加微信公众号:Conscience_Remains

下面是准备介绍的大纲:

1.

CPU的基本的硬件组成结构由简单到复杂


2.

CPU集成的架构演变以及分别对应的职能


3.

CPU代码语言的发展过程以及汇编到机器码的具体执行


!!!今天时间关系无法写出全文,先简单介绍一哈文章状态,以及推荐大家一个汇编执行小游戏。

这是这几天配合看的基本书,有兴趣的朋友可以找分享给你哈。

今天没有写具体细节,但是想先给大家推荐一个这几天玩的一个小游戏,程序员升职记,里面的运行逻辑其实很接近汇编指令在CPU的运行情况,还是很好玩的。配合上文章简直稳的一匹。

先来介绍一哈游戏:程序员升职记(Human Resource Machine)

游戏里面是模拟一个程序员从入职到工作四十五年 的开发过程。每一个环节有不同的挑战,下面就是差不多20关的时候,遇到的一个问题,自己写时间复杂度和空间复杂度上都没有满足要求。

不过还好有攻略,经过攻略的调整的代码好多了,哈哈哈哈。最后面附上攻略来源。

攻略:https://cowlevel.net/article/2045657

对滴,游戏攻略奉上,每一关都有介绍,这位做攻略的大哥有心了。

最后就这样哈,大家要玩有些的朋友可以关注后台回复 程序员升职记 把的下载链接分享给你哈,大家一起玩起来,寓教于乐。

更多分享,扫码关注

原文作者:良知犹存

原文链接:https://www.cnblogs.com/conscience-remain/p/13605675.html

更多推荐

更多
  • Spark编程-结构化流式编程指南 概述,简单例子,编程模型,使用 Dataset 和 DataFrame 的API,连续处理,额外信息,基本概念,处理 Eventtime 和 Late Data,faulttolerance 语义,创建流式 DataFrame 和流式
  • Spark编程-20 Spark 配置Spark 属性,Environment Variables环境变量,Configuring Logging配置 Logging,Overriding configuration directory覆盖配置目录,Inhe
  • Spark编程-在Mesos上运行Spark 运行原理,安装 Mesos,连接 Spark 到 Mesos,Mesos 运行模式,Mesos Docker 支持,集成 Hadoop 运行,使用 Mesos 动态分配资源,配置,故障排查和调试,从源码安装,第三方软件包,验证,上传 S
  • Spark编程-Running Spark on YARN 启动 Spark on YARN,准备,配置,调试应用,在安全集群中运行,添加其他的 JARs,配置外部的 Shuffle Service,用 Apache Oozie 来运行应用程序,Kerberos 故障排查,使用 Spark Hi
  • Spark编程-Spark 调优 数据序列化,内存调优,其它考虑,,内存管理概论,确定内存消耗,优化数据结构,序列化 RDD 存储,GC优化,并行级别,Reduce任务内存使用,广播大变量,数据局部性, 由于大多数Spark计算都在内存中,所以集群中的任何资源(C
  • Spark编程-Spark Standalone模式 安装 Spark Standalone 集群,手动启动一个集群,集群启动脚本,提交应用程序到集群中,启动 Spark 应用程序,Resource Scheduling资源调度,监控和日志,与 Hadoop 集成,配置网络安全端口,高可用
  • Spark编程-Monitoring and Instrumentation Web 界面,Metrics,高级工具,事后查看,REST API,环境变量,Spark配置选项,API 版本控制策略, 有几种方法来监视 Spark 应用程序:Web UI,metrics 和外部工具。 Web 界面每
  • Spark编程-Spark提交任务Submitting Applications 打包应用依赖,用 sparksubmit 启动应用,Master URLs,从文件中加载配置,高级的依赖管理,更多信息, 在 script in Spark的 `bin` 目录中的`spark-submit` 脚本用与在集群上启动
  • Spark编程-作业调度 概述,跨应用调度,应用内调度,动态资源分配,公平调度资源池,资源池默认行为,配置资源池属性,配置和部署,资源分配策略,优雅的关闭Executor(执行器),概述Spark 有好几计算资源调度的方式。首先,回忆一下 [集群
  • Spark编程-Spark 概述 安全,下载,运行示例和 Shell,在集群上运行,进一步学习链接, Apache Spark 是一个快速的,通用的集群计算系统。它对 Java,Scala,Python 和 R 提供了的高层 API,并有一个经优化的支持通用执行图
  • 近期文章

    更多
    文章目录

      推荐作者

      更多