我是UWI大学电气和计算机工程专业的二年级学生。我目前正在学习的PIC 16F877单片机和它的编程主要是ASM (与小C)和困惑的符号在它的指令集。现在我明白指令可能遵循不同的格式(取决于操作数、指令的字大小),但是我似乎无法弄清楚(高亮显示的)符号是指什么(是的,我知道它是这个单词的MSB和LSB,只是我不知道它们为什么被标记成这样,或者它们的意思是什么)。
第5节-Table 5-1:中程单片机指令集,PIC微型中程参考手册:

发布于 2018-04-23 02:45:45
我不熟悉这个特定的文档,但是我已经为其他PIC设备家族使用了类似的文档。如果您在突出显示的表上面查找,您应该找到一个节/表,描述用于描述指令集(d、f等)的各种速记代码的含义。
===============
编辑--有人否决了这个答案,所以我看了看有问题的文件。我错了:问题的答案不是在上面,而是在下面。
在紧接OP引用的页面上,在5.2节中,我们找到图5.1“指令的一般格式”,它解释了d、f、k等的含义。

发布于 2018-04-21 12:13:15
它是二进制的操作码结构,每条指令14位。
即,用于f=127和d=1的ADDWF将被编码为00 0111 1111 1111 (十六进制07FF操作码),"f“和"d”符号是指令的参数(对于f=48和d=0,ADDWF操作码将是00 0111 0011 0000 = 0730在十六进制)。
CLRW中的"x“可能意味着”任何“,已经定义的位是决定性地标识CLRW指令,其余的"x”位则被忽略。
我不知道PIC组装,所以我可能是错的"x",但我会是超级惊讶。是不是这个CPU的非8/16/32字内存结构,寻址内存14位字?如果您习惯了8位字节并根据这些字节对数据/内存进行计数,那么更难快速评估内存数量。
https://stackoverflow.com/questions/49955520
复制相似问题