TA的每日心情 | 开心 9 小时前 |
---|
签到天数: 163 天 [LV.7]常住居民III
荣誉版主
- 积分
- 4332
|
发表于 2024-4-2 21:48:05
|
显示全部楼层
因明天一早要出差, 今晚初步看了3遍.
有一点强调一下:
1. 80251的 ECX,EDX, 坚决不能使用DR12, 可使用 DR16, DR20
因为 DR12 被编译器C251占用, 如要使用, 需增加一堆保护恢复之类指令.
下面是个人感想, 无关主题:
2. 无符号数的四则运算 比 有符号四则运算重要, 只有单一运算, 选无符号,
当然, 两者都选也行, 部分有/无符号运算通用(加减乘).
3. 关于 新型 STC8, 计划是单核为主(纯51核)? 还是双核为主(51核+251核BIN模式)?
如以双核为主, DPU32中的16位指令及部分32位指令, 个人认为没必要.
因为通过子程序调用 DPU32指令的运算速度, 往往没有直接调用 251指令的速度快.
注: 前提是新型 STC8(双核), 能在 51核模式下, 运行 251核 BIN模式指令.
另外, 假如新型 STC8, 以单核(纯51核)为主, 增加 DPU32, 实际算力提升要打很大的折扣.
只为, 51核的指针操作, 效率实在太低了, 拖慢了整体速度
至于在 DPU32中, 增加几条提升现有STC51核, 指针操作速度的命令, 我也想过,
写了几条, 综合评估, 意义不大, 提升不了多少速度.
因为, DPU32中的指令, 要被 C51调用, 必须以子程序形式, 有些太简单的 16位/32位指令,
C51直接生成内嵌代码(非子程序调用), 使得DPU32中的相应指令, 根本没法使用.
个人对新型 STC8核的理想模型, 是在现有 STC8核的指令解释器基础上,
仅需增加一个251核BIN模式指令解释器即可.
总线也是用现有 51构架的总线(比STC32总线简单多了),
只需合理分配好现在的几个RAM块,XFR,CODE,地址映像即可.
在 C51编译器下, 她是 51, 并且可运行C251库(改写), 51的所有缺陷(短板), 都得到解决.
整体性能 达到 C251编译器下 的 80% 以上, 称她为真正的 准 16位机也不过份.
当然, 在 C251编译器下, 她是 251
|
|