实话实说吧。 这个问题困扰我很久很久了。 在学校呆了三年,没有老师提到,在网上搜索,没有我满意的答案, 在资料中查找,泛泛之谈。 所以,只能求于大家了。 你们看到我提到的问题不要笑啊? 因为这个过程被抽象了,所以我们感觉不存在。 我知道 完成 此过程 是由 汇编器 或者 解释器 完成的。 但是 它都是软件, 若他们不是在硬件上运行,就根本没有 汇编器 和解释器。 我猜测 ,最根本的可能是 利用 可编程逻辑阵列完成的。 即将 汇编指令 和 唯一对应的 机器码 通过 可编程逻辑阵列 完成映射关系, 以后,计算机的发展像滚雪球一般,基于前者来不断完善的。 我想确认一下,因为这是我的猜想。 还有我真的想知道 程序在计算机中是怎样 一步一步 运行的。 比方 给内存每个 bit 连接一个LED指示灯, 这样,从某种程度上就可以感性知道程序运行的过程了, 然而很遗憾, 好像没有。 有谁知道吗? 有谁愿意向我透露吗?
呵呵,难得你帮我回答了这么多的问题。 其实我在大二上过微机原理课程设计,你给我的方法我之前用过。 我们还编写了 微指令集(24bit*30条),机器码。 每条机器码对应好几条 微指令呢。 反正挺好玩的,但是过程很烦,一不小心就错了。 呵呵, 我现在最最想知道的就是, 每一条汇编指令 通过什么硬件 转换成 01 代码。 说实话, 如果真的叫我去实现,我会借用ATM(异步传递方式)来实现。 它主要有三种实现方式。
不好意思啊,几分不够,不能追问了。
呵呵,你所说的是合理的。但是,能不能再更近一步,再详细一点呢? 其实你已经很不错了,真的。要继续加油啊。 我,脑筋比较死。 因为世界上所有的软件都要运行在硬件之上(也许有点夸张)。但是,我不知道他们是怎样通过一系列的方法和手段实现的。我真的很想知道。 很多人都和我说了,但是呢,没有说到点子上, 而我只关注那一点,因为我直觉上认为其他的 不必知道。 呵呵,谢谢你的回复! 祝你成功, 以后知道的话回答我
谢谢啊。 指令译码器的译码对象是 机器指令, 整个译码过程就相当于 计算机理解它,并在理解的过程中执行它,理解完了,整个执行过程就出来了。是不是这样?还有,我们在键盘上敲代码,其实我们敲进电脑中的不是字符,而是一串2进制代码。 而在显示器上显示的内容是 计算机 经过 译码得来的。 其实整个过程被抽象了,时间一长,我们就想当然的认为我们敲进去的是字符,显示的也是敲进去的字符。 本质上 中间有转换过程。
追答汇编中的叫助记符!他在编辑时就全变成了二进制码了。如你熟了也可在DEBUG下直接打这二进制码的,可它太抽象不好记,所以才用了这助记符来帮忙记忆!
追问这个我当然知道啊,但是是怎么实现的? 在哪里? 那个硬件参与?
追答汇编中的叫助记符!他在编辑时就全变成了二进制码了。如你熟了也可在DEBUG下直接打这二进制码的,可它太抽象不好记,所以才用了这助记符来帮忙记忆!你这说的字符可更转换的多了,那可还要和字符的点阵再进行转换了,就是上屏显示还要换算屏上地址那点放那这才能出的了你看到的字符。要不怎么不同的显卡要有自己的驱动才可高效的显示。要不只能兼用VGA显示了。、、
你想实现什么!?
哎,你没有看懂我的问题。 汇编中的叫助记符,他在编辑时就全变成了二进制码了。 请问这个是怎么实现的? 难道是魔术吗? 应该有来龙去脉吧?知道的话就请告诉我一下。
你说的我也知道, 但是我不知道 每敲一行助记符,怎么就对应那串2进制的机器码? 这个我不知道是通过什么技术实现的。
你可在DEBUG中直打入这二进制码,再就是用厂家的汇编软件会把你的助访符变成那的。
追问厂家的汇编软件 是商家机密码? 能不能搞到手啊? 研究研究一下? 还有, 我的问题你还是没有理解。 如果你自己亲手制作一台电脑,你应该怎么入手。 能够告诉我你的想法吗(包括所有的 硬件 和 软件资源 )?
追答哈!你这大错,那是厂家为了卖他这芯片的必备工具,和他那资料一样,没有这些谁会用他的芯片啊,那资料上明明白白写着每一句助记符的机器代码是多少的。
自己设计电脑那可要从简单开始,先学相关理论。你真有这心的话就从单片机开始吧,只要花上几十元钱购一开发板就可自己动起手来的,再配合着看资料,这就是最佳途径。
是这样啊。 但是很多时候,你有没有发现,你说:“那资料上明明白白写着每一句助记符的机器代码是多少的”。 其实我们只会用, 但是我们不知道它是怎样实现的。 我们只会用,不会自己动手做一个,而我现在想要知道的是它是怎样实现的。 为什么我按照厂家的参考资料编码,就能够得到对应的机器码? 是什么东西完成的(具体到 硬件 和 软件)。 我有一个开发板的51单片机。 不过最近有点忙,等到有时间会玩玩的。
追答哈!你就把那代码按你想要做的事的要求顺序打成一个HEX格式(这个格式很重要,错了机器认不到)的文本文件,嘿,烧到你单片机中就可玩起来了。真玩时有不懂的再来问我吧!Q名 休闲正分桌 ,不过还是直接用厂家的汇编软件会更省事一点的了。就这汇编软件就可帮你写好这16进制的HEX文件的。这网上多的是,厂家还专要提供给你用的了。他才好多卖他的芯片嘛。
本回答被网友采纳我知道翻译成机器码后的指令执行过程。 我想知道的是 翻译的 过程。 不是翻译前, 翻译后,是翻译的过程,过程。
追答翻译是纯软件完成,汇编就是由汇编程序完成,高级语言就是由编译程序,计算机专业有专门开设编译原理就是讲怎么翻译的,就像如果一条mov指令如果它是的机器码是70,汇编就是完成这个翻译过程,翻译以后是个相对地址形式的文件,所以要连接,确定地址,再运行,运行就是存放该程序的地址送给相应的程序计数器,程序就一条一条执行了。
追问但是编译器也是软件啊?难道它是用机器码写的? 我感觉核心模块是的。
我需要知道的是编译过程中硬件的过程细节。 我学过编译原理, 但是, 它不是我的目标。