从程序指令到电路信号

本文详细阐述了C语言指令如何通过汇编、机械码,最终转化为CPU中的微程序和微指令,影响电路的高低电平,实现计算机功能。通过XRL和JNZ等操作实现条件判断,汇编语句直接转换为机械码,微指令由32位组成,控制电路的通断,完成计算任务。

举例子解读一下如何一步步从C语言指令变成硬件电路中高低电平。


1.C语言指令经过汇编后变成汇编语句,if语句通过XRL异或运算和JNZ(判断累加器A是否为零)跳转语句实现。



2.汇编语句一一对应转换为机械码

汇编语句是机械码的助记符表示,所以每一天汇编都有一条机械码一一对应,直接转换就行,不需要编程。

具体内容可以看百度文库https://wenku.baidu.com/view/85451cec4afe04a1b071de0f.html



3.CPU的设计是将每条机械码对应一组微程序,每组微程序有几条微指令组成。

微指令的指令格式:控制字段+判断测试字段+下地址字段。

ARM下微指令由32位组成,每一位控制一个电路上的通断开关,决定这个电路是通电1,还是断电0;

控制字段就是微指令的功能表示,比如有80条微指令,使用编码控制就需要控制字段是7位的,可以解析成具体的微指令执行。判断测试字段是几个判别标志位;下地址字段是下一个微指令的地址。

https://wenku.baidu.com/view/83aec004de80d4d8d05a4f01.html


4.微指令的每一位数字都会变成电路中一个高/低电平信号,控制着电路的通断,加上时钟产生的时序,便实现了一个个功能。




 




评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值