Arduino 将命令发送到设备,名称为惯用语?
有时,一个设备需要向另一个设备发送命令。在简单的情况下,我经常使用数字和字母字符串,如Arduino 将命令发送到设备,名称为惯用语?,arduino,communication,interpreter,Arduino,Communication,Interpreter,有时,一个设备需要向另一个设备发送命令。在简单的情况下,我经常使用数字和字母字符串,如 "123X456YG" 有意义 set the value of parameter X to 123, 456 to Y, and then Go. 解释算法非常简单:一个字符一个字符地处理,“推”数字以生成一个数字(n=10*n+ch-'0'),当它是一个字母时执行操作(并重置数字) 当没有太多不同的动作时(并且你可以记住字母),它非常方便,当然你可以用于更复杂的事情 这种(相当明显的)方法有名字吗
"123X456YG"
有意义
set the value of parameter X to 123, 456 to Y, and then Go.
解释算法非常简单:一个字符一个字符地处理,“推”数字以生成一个数字(n=10*n+ch-'0'
),当它是一个字母时执行操作(并重置数字)
当没有太多不同的动作时(并且你可以记住字母),它非常方便,当然你可以用于更复杂的事情
这种(相当明显的)方法有名字吗?这是后缀符号的一个例子。它是一种非常自然地从任何使用堆栈的东西中脱落的符号
例子包括:
反向波兰符号——从20世纪60年代后期开始,在可编程计算器上很常见
。。。其中,4 3-5+
导致6
留在堆栈的顶部,因为堆栈是这样建立的:
Stack Unconsumed input
1 [ ] 4 3 - 5 +
2 [ 4 ] 3 - 5 +
3 [ 4 3 ] - 5 +
4 [ 1 ] 5 +
5 [ 1 5 ] +
6 [ 6 ]
在步骤4和6中,通过从堆栈中弹出元素,然后将结果推送到堆栈上来执行操作符
许多基于堆栈的编程语言——包括和。后缀语法在世界上也相当普遍
如果你好奇的话,我完全建议你着手写附言。它是一种成熟的编程语言;例如,您可以在几个字节内编写一个递归Postscript程序,以绘制分形曲线。在Ghostscript中测试它。PDF与Postscript密切相关
您创建的语言与这些语言在标记化方法上有所不同,但在其核心——将操作数放在运算符之前——它是一种后缀语言
您不太可能获得专利授权。:) 也许我应该写一份专利申请。好吧,它不是真正基于堆栈的,因为深度严格限制为1。更准确地说:我看到几个程序使用相同的技巧,所以我想知道它是否有一个共同的名称,所以我可以在论文中参考它。我熟悉基于堆栈的语言(由解释器编写),但不熟悉微型计算机编程领域的流行技术。