问题标签 [68hc11]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
769 浏览

assembly - 用 68HC11 汇编语言计算字节数组的校验和

校验和计算为数组每个字节的不带进位的总和,并放入寄存器 B。数组的大小在寄存器 A 中,数组在内存中从寄存器 X 中的地址开始。

到目前为止,我得到了这个程序:

我认为这可以完成这项工作,但我是组装和 68HC11 的新手。你能告诉你是否看到有问题吗?提前致谢。

0 投票
1 回答
1707 浏览

assembly - 将 16 位整数无符号数转换为 ASCII 字符串,以十六进制表示数字

对于 Asembly (68hc11) 这是在纸上处理的分配。

编写一个程序,将 16 位整数无符号数转换为 ASCII 字符串,以十六进制表示该数字。数字在寄存器 D0 中,字符串从寄存器 A0 中的地址开始放入内存中。

我如何将位数分成 4 位来表示汇编中的十六进制数,是否有执行此操作的说明?我也有一个问题来可视化程序的逻辑。将四位分开后,我如何使程序集将其转换为十六进制?当我得到十六进制字符时,我需要将它们与每个可能的 ascii 字符进行比较?

我真的不知道从哪里开始。

0 投票
1 回答
2346 浏览

gcc - 让 GCC 优化手动组装

为了使 GCC 不会在我每次执行|=or时生成加载-修改-存储操作&=,我定义了以下宏:

他们工作得很好;反汇编的二进制文件是完美的。

当我按顺序使用多个时,问题就来了:

这导致:

有没有办法让 GCC (3.3.6-m68hc1x-20060122) 自动优化冗余堆栈操作?

0 投票
0 回答
143 浏览

gcc - 索引寻址的约束

(这是“让 GCC 优化手动组装”的后续内容)

我一直试图让 GCC (3.3.6-m68hc1x-20060122) 使用索引寻址来发出bsetbclr汇编指令,但我使用的任何约束似乎都不起作用。

asm: _

C:

汇编代码结果:

现在这真的非常接近。但不幸的是,它完全无效。它必须如下所示:

我必须使用哪些约束来指示 GCC 发出该汇编代码?

GCC 3.3.6 扩展汇编文档
GCC 3.3.6 约束文档

0 投票
1 回答
160 浏览

pipeline - 68HC11是流水线的吗?

68HC11有流水线技术来提高集成电路的性能吗?68HC11是用流水线的吗?我没有找到有用的信息谢谢

0 投票
1 回答
371 浏览

c - 使用 4 字节数字的 68HC11 上的斐波那契数列

我试图找出一种使用 68HC11 IDE 实现斐波那契序列的方法,该 IDE 使用 Motorolla as11 汇编器。

我已经使用 2 字节无符号小端格式完成了它,现在我尝试使用 4 字节变量更改它,使用大端格式

我的伪代码(用 c 编写):

我将包括一些我当前的汇编代码。请注意,count 设置为 1 字节的 unsigned int,prev、next 和 result 是 2 字节的 unsigned int。N 无符号,设置为 10。

我现在遇到的问题是改变这个(除了明显的变量更改/声明)N 现在将从 40 开始,而不是 10。将我的伪代码更改为包含指针允许我用 1 比 1 更好地实现它大端?由于这是little-endian,我认为我必须更改一些分支。是的,这是课堂作业,我不是在寻找代码,只是一些指导会很好。

谢谢!

0 投票
0 回答
2524 浏览

c - 如何覆盖/删除 CMake 的 C 编译器标志

我有一个 CMakeLists.txt 文件,并且正在使用 GCC 68HC11 C 编译器编译固件程序。

问题是 CMake 在末尾附加了我不想要的“-E”编译器标志。其他附加标志“-v”“-dD”和“-D___CIDR ...”也是不需要的,但不会像“-E”那样导致编译错误。如何关闭这些附加标志?

我试过 set(CMAKE_C_FLAGS_DEBUG "") 没有效果。

这是我的完整 CMakeLists.txt 文件

这是生成的编译器命令

0 投票
1 回答
508 浏览

assembly - 汇编编程68HC11单片机

1)展示一个6元素表从地址007f复制到009d的场景(可以任意输入6元素的值)。

2) 修改程序,使第 13 行的 TST 计数不再需要。(即第 14 行的 BEQ 分支指令将检查程序执行的正确状态以确定分支条件。)

3) 修改程序,使第 6 行的“Ptr RMB 2”不再使用。相反,寄存器 X 指向表 1 中的元素,而寄存器 Y 指向表 2 中的元素。

大家好,我被这个问题难住了……对于第三个问题,我的具体问题与表格有关……X 指向空间,Y 指向长度吗?我不知道指的是什么表...

对于第二个,这是否意味着我在第 23 行完全删除了 TST 行以及循环的其余部分?检查程序的“正确状态”是什么意思?

任何帮助都会非常好......谢谢。

0 投票
2 回答
629 浏览

arrays - 如何在汇编中为 68hc11 创建一个数组?

我需要编写一个从 100 美元开始执行的程序,以 800 美元分配一个 200 字节的数组,并用值 200、199、... 1 初始化该数组。

我需要知道如何创建一个循环来减少数组,同时减少要存储在数组中的值。

有什么想法或建议吗?我找不到这个处理器的很多示例代码。

0 投票
1 回答
171 浏览

assembly - 68hc11总成输送带方案

嗨,我对 68hc11 程序集编程相当陌生,想知道如何着手解决这个问题。

传送带传感器连接到内存位置 $8000 的第 0 位,编写程序来计算通过的对象数量(这是 < 10 000)

据我了解,传感器每次打开时都会增加计数器(位零 == 1)。但我只希望计数器为每个对象增加一次,而不是传感器开启的总时间

这是我迄今为止编写的程序