首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >8085汇编程序的时钟周期和内存使用

8085汇编程序的时钟周期和内存使用
EN

Stack Overflow用户
提问于 2019-12-11 22:42:41
回答 1查看 247关注 0票数 1

我有一个小程序在汇编中写成一个数字的平方。

代码语言:javascript
运行
复制
Org 2010h
Db 0ah        

Org 2013h
Db 00h        

Org 1000h     
mvi a, 00h    
lxi hl, 2010h 

mov b, m
mov c, m      

CYCLE:
add b         
dcr c         
jnz CYCLE     

lxi hl, 2013h 
mov m, a       

hlt

关于这个项目我有几个问题。

第一项任务是,如果每个存储单元准确地存储一个字节的信息,则确定将程序部件存储在内存中所需的程序存储单元的数量。第二个任务是确定运行程序所需的时钟周期。

这里的逻辑是什么?我该如何计算这些东西呢?我一点也不明白,任何帮助都将不胜感激。干杯。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-11 23:51:00

https://pastraiser.com/cpu/i8085/i8085_opcodes.html的指令大小和循环时间为每8085条指令。

8085是非流水线的,使perf分析变得非常琐碎:每条指令都有一个固定的成本,你可以把它加起来,不像现在的CPU,循环不仅仅是它的各个部分的总和。

例如,我对Finding the absolute value of a number in 8085 microprocessor assembly language的回答包括代码大小/性能分析。

或示例: lxi hl,2010 h-3个字节和10个时钟周期。mov b,m--1字节和7个时钟周期。两者的总和只有4个字节和7个时钟周期?是这么直截了当还是我遗漏了什么?

我想你指的是17个时钟周期,但是是的,在一个基本的块(没有分支)中很容易。

8085是如此原始,以至于在取下一条指令之前完全完成了一条指令的执行。

当然,正如Erik所指出的,您必须通过循环跟踪执行,以获得动态指令计数/混合:jnz被执行了9次,而不是一次。

代码大小取决于静态指令组合(只计算每条指令一次),但循环时间会计算每条指令的执行次数。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59295244

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档