小编Jas*_*Kim的帖子

CMP和CMN有什么区别?

讲座幻灯片说CMN通过将第二个操作数的2的补码"加"到第一个操作数来进行比较,CMP通过从第一个操作数"减去"第二个操作数来进行比较.但是根据我到目前为止所学到的,处理器内的臂指令只执行加法,并通过对第二个操作数进行2的补码来实现减法(请告诉我这是否正确).所以不是CMN和CMP基本上做同样的事情???

assembly arm

2
推荐指数
1
解决办法
2167
查看次数

为什么我的c!='o'|| c!='x'条件总是如此?

我有这个循环语句,我将使用类似C的语法表达(C,C++,Java,JavaScript,PHP等都使用类似的语法):

while (c != 'o' || c != 'x') {
    c = getANewValue();
}
Run Code Online (Sandbox Code Playgroud)

我想让它一直运行,直到我得到一个'o''x',但它永远不会退出,即使c'o''x'.为什么不?

我也尝试过使用if:

if (c != 'o' || c != 'x') {
    // Show an error saying it must be either 'o' or 'x'
}
Run Code Online (Sandbox Code Playgroud)

但这也总是显示错误信息,即使c'o''x'.为什么?

logical-operators conditional-statements logical-or

0
推荐指数
1
解决办法
1350
查看次数