作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我得到了这样的 IF 语句:
if( (Ch > ‘g’) && (Ch < ‘m’)) || ((A>=0) && (A<=100))
condition = 1;
else
condition = 0;
其中 Ch 是 char,A 是 int,condition 是短整型。
我正在尝试将其放入汇编语言中:
Org $8000
CLR.W DO
CLR.W D1
CMPI.B #$67,ch
BGT ;something here...
Org $9000
ch DC.B 'a'
A DC.L 0
condition DS.W 1
我相信我已经得到了第一个 if 条件,其中 67 是字母“g”的 ascii 代码的十六进制值。但我不知道如何在这里实现 AND 语句,我想 or 语句可以像 else 一样对待吗?因为 if 的一部分执行,另一部分执行。任何帮助,将不胜感激。
最佳答案
如果您确实有一个有效的流程图,那么将其转换为汇编应该是一件小事。
我不会为您绘制它,只是给出它的伪代码渲染:
if Ch <= 'g' goto check_second_term
if Ch < 'm' goto result_one
check_second_term:
if A < 0 goto result_zero
if A > 100 goto result_zero
result_one:
condition := 1
goto done
result_zero:
condition := 0
done:
我相信您可以将它们转换为 cmp
+bcc
对。
关于c - 从 C 语言到汇编语言的 If 语句转换(Motorola 68k),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33358144/
我是一名优秀的程序员,十分优秀!