汇编比较两个数大小_计算机是怎样跑起来的 -- 体验一次汇编过程

标志内存或I/O中存储单元的数字叫做“地址”。

CPU中的标志寄存器有什么作用?

用于在运算指令执行后,存储运算结果的某些状态。

从程序员的角度看硬件

CPU:种类,时钟信号的频率。可以使用哪种机器语言取决于CPU的种类。

内存信息:地址空间,每个地址中可以存储多少比特的信息。每个地址都标志着一个内存中的数据存储单元,而这些地址所构成的范围就是内存的地址空间。

I/O信息:I/O的种类,地址空间,连接着何种周边设备。只要用CPU控制I/O的寄存器,就可以设定I/O的功能,与周边设备进行数据的输入输出。

在内存中,每个地址的功能都一样,既可用于存储指令又可用于存储数据。而I/O则不同,地址编码不同(即寄存器类型不同),功能也就不用。

5cd5f86e25305c12af69815cce294b66.png

机器语言和汇编语言

汇编语言的语法十分简单,以至于只有一个语法,即把“标签”,“操作码(指令)”和“操作数(指令的对象)”并排写在一行上。

标签的作用是为该行代码对应的内存地址起一个名字。

操作码就是表示“做什么”指令。按功能这些指令可以分成运算、与内存的输入输出和与I/O的输入输出三类。

操作数表示的是指令执行的对象。CPU的寄存器、内存地址、I/O地址或者直接给出的数字。

汇编语言的语法和英语祈使句很像。构成机器语言的是二进制数;而在汇编语言中,用十进制数和十六进制数记录数据。

5adb47da66437bb4f34c9720899e60a1.png

Z80 CPU的寄存器结构

与I/O的寄存器不同,CPU的寄存器不仅能存储数据,还具备对数据进行运算的能力。A、B、C、D等字母是寄存器的名字。寄存器的用途取决于它的类型,有的指令只能将特定的寄存器指定为操作数。

像A寄存器也叫做累加器,是运算的核心。F寄存器也叫做标志寄存器,用于存储运算结果的状态,比如是否发生了进位,数字大小的比较结果等。PC寄存器也叫做程序指针,存储着指向CPU接下来要执行的指令的地址。

操作数必须是已存储在CPU寄存器中的数字,这是汇编语言的规定。

43622638dea0feb96e3d846f23887867.png

追踪程序的运行过程

用汇编语言编写的程序是不能直接运行的,必须先转换成机器语言。机器语言是唯一一种CPU能直接理解的编程语言。

一旦重置了CPU,00000000就会被自动存储到PC寄存器中,这意味着接下来CPU将从00000000号地址读取程序,取出这个地址下的指令,如果判断为两个字节构成的指令,就会下一个地址00000001中读出数据,把这两个数据汇集到一起解释、执行。

由于刚刚从内存读出了一条2字节的指令,所以PC寄存器的值要增加2,并接着从00000010号地址读出指令,解释并执行。按此流程序,反复进行“读取指令”,“解释、执行指令”,“更新寄存器的值”三个操作。

重点是要观察PC寄存器是如何控制程序流程的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/468741.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android区块链 钱包_区块链钱包Cashbox 开发工程师聊一聊开源

今天与大家聊一聊软件开源。事情的起因是一次闲谈的时候,市场部的同事表示:不做软件开发的人不能够理解为什么要把软件源代码公开出去。当时的我很惊讶,因为就像他们不理解为什么要开源一样,我也不理解他们为什么不理解为什么要开…

最新车载导航端口检测工具_高德地图这个功能 把微信都没做好的车载社交解决了?...

在汽车网联化和智能化带给人们的诸多想象里,车内社交似乎是最虚无缥缈的那个。在移动互联网领域,微信通过满足人们社交需求这个基本点,构建起庞大的用户群体,展示出巨大的市场前景。但在驾车场景下,车载社交该怎么玩&a…

王译潇20162314 第九周作业总结

学号 20162314 2016-2017-2 《Java程序设计》第九周学习总结 教材学习内容总结 数据库是为其他程序提供数据的应用软件 关系数据库通过唯一的标识符在不同表的记录间建立了关系 JDBC API用来建立到数据库的连接 CREATE TABLE SQL 语句用来创建新的数据库表 ALTER TABLE SQL 语句…

sketchup边线设置_春天花花天桥,SketchUp草图大师快速建模!

最近小吧在网上看到一座设计很特别的天桥,形状很像一朵花,名字也十分写实——春花天桥。喏,就是下面这个家伙!图片来自网络春花天桥是2011年深圳举办大运会前夕投资建设的形象提升工程之一,在建设初期就被定位为地标性…

android 7.1 apk的systemuid和系统应用Setting相同导致开机找不到库的问题

1、前言Android apk加载机制这就是我最近在解决的一个问题,32位的apk可以用32位的库,那64位的apk可以用64位的库,如果我想64位的apk同时使用32和64位的库呢?android加载so文件的机制apk在安装的过程中,系统就会对apk进…

怎样的人适合当码农?

1高中的时候,我一个友仔,他说要创办一个科技协会,然后跟我说电脑里面的代码都是0和1组成的,我现在还记得那天我们在学校开会的时候讨论电脑如何运行,我一脸痴呆的听他给我讲解电子知识,而且他后面自己做了一…

android 7.1 apk的systemuid [2]

1 上周发的一篇文章《android 7.1 apk的systemuid和系统应用Setting相同导致开机找不到库的问题》,然后有个小伙伴找我讨论了,觉得自己的脑洞了打开了很多,所以针对这个问题再次做一次总结,如果大家有好的建议也可以在文末留言。…

Struts2_3_国际化处理_自定义拦截器_文件上传及下载_OGNL

Struts2国际化处理 浏览器根据当前的语言环境自动查找对应的语言环境资源包, 使jsp显示合适的语言数据环境 Struts2实现国际化, 动作类必须继承ActionSupport 创建资源包 资源包由多个properties文件组成, properties文件的文件名必须满足命名规范: 文件名_语言代码_国家代码…

RBAC 基于角色的访问控制

RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。…

C语言书籍大全

学习过linux的同学应该都知道,linux系统几乎都是用c编写,包括现在主流的android,ios系统,都是使用c编程。为了方便大家学习C语言,小编搜集整理了市面几乎所有的C语言书籍,下面给出部分比较有名的,在微信公众…

android 7.1 apk的systemuid相同导致问题[2]

1上周发的一篇文章《android 7.1 apk的systemuid和系统应用Setting相同导致开机找不到库的问题》,然后有个小伙伴找我讨论了,觉得自己的脑洞了打开了很多,所以针对这个问题再次做一次总结,如果大家有好的建议也可以在文末留言。2先…

送书送书送书,(包邮)送,仅此而已!

亲爱的各位fans们,大家好,这次小编联合5个公众号朋友一起送书,一共送出 6本,当然包邮!感谢本次活动的赞助商北京大学出版社。6个公众号联合送书,一共6本书,每个公众号送1本(包邮)。 6个公众号同…

requests 获取div_爬虫系列第五篇 使用requests与BeautifulSoup爬取豆瓣图书Top250

上一篇我们学习了BeautifulSoup的基本用法,本节我们使用它来爬取豆瓣图书Top250。一、网页分析我们爬取的网页的url是https://book.douban.com/top250?icnindex-book250-all。首页如图与豆瓣电影Top250差不多,将页面拉到最底部,可以看到分页…

python--socket套接字/TCP

socket套接字/TCP 一 客户端/服务器架构 C/S架构,包括 硬件C/S架构(打印机)软件C/S 架构(web服务)C/S架构的软件(软件属于应用层)是基于网络进行通信的Server端要: 1.力求一直提供服…

uniapp封装网络请求_八张图带你走进“通过一个完美请求封装一个网络模块”

本文提供视频课程讲解,需要的小伙伴可以点赞私信‘’网络模块‘’前往领取学习大纲1、网络模块在应用中的地位1.1当今占统治地位的网络组件OKHttp OkHttp 是一个相对成熟的解决方案,据说 Android4.4 的源码中可以看到 HttpURLConnection 已经替换成 OkHt…

毕业的这0111年

1.2004年,不知道大家对这个时间有没有感觉,那几年我正在读高中,韩寒的《三重门》席卷校园,同样还有郭敬明的《夏至未至》。那时候的我,还挣扎在温饱阶段,我每天吃饭的时候都想上食堂的三楼吃风味&#xff0…

我的互助小蜜圈

写在前面 从不久之前到现在,我的微信公众号从一个小小小阶段到了另一个小小阶段,非常感谢各位读者对我的信任和支持,当然我也是非常用心的维护这这群大佬,时刻想着怎样给各位大佬做好服务 ,比如我正在溜娃&#xff0c…

比较两个表格的不同_两表数据的核对,WPS表格似乎更加方便容易

在EXCEL中的两个表格的数据对比,可能使用的方法会采用到查询语句,VBA之类的。显得在使用的过程显得有些复杂。在不经间发现WPS表格的功能处理此类的问题显得就比较的简单的多。查看并标识出分数相同的内容如下面的分数表,选择分数栏的范围&am…

我的知识小密圈

写在前面从不久之前到现在,我的微信公众号从一个小小小阶段到了另一个小小阶段,非常感谢各位读者对我的信任和支持,当然我也是非常用心的维护这这群朋友,时刻想着怎样给大家做好服务 ,比如我正在溜娃,隔断时…

vk_down 每次下翻丙行 c++_笔记本接口不够用?不妨试试这款Type-C拓展坞,给你7个接口用...

随着笔记本电脑越来越轻薄化,已经很难再布局较多的数据接口了,但是在办公等环境下总是需要这些接口来满足需求。就拿小新个人来说,使用的是小米笔记本12.5寸款的,该款笔记本仅有三个接口,分别是全功能 USB-C 接口 x 1、…