微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

汇编 Att if 语句

如何解决汇编 Att if 语句

我有来自输入的单词,我想更改 ascii 代码小于 100 的(+13 个 ascii 值)字母 - if(char[index] S ( ASCII 83)) 但它除了循环外不起作用。

c 代码

char a[4] = "TEXT";
for(int i = 0; i < 4; i++)
{
    if(a[i]<100){
        a[i]+=13;
    }
}
.data
input: .space input_len

_start:
mov $SYSREAD,%eax
mov $STDIN,%ebx
mov $input,%ecx
mov $input_len,%edx
int $SYSCALL32

mov %eax,%esp
dec %esp // get rid of \n from input string
mov $0,%ebp //loop index

loop:
cmp $100,input(%ebp) // input is string that user wrote in console
jg et_elseif
add $13,input(%ebp)
et_elseif:
inc %ebp
cmp %esp,%ebp
jl loop

如何在汇编中正确比较字符的 if 语句,因为显然我的代码不起作用

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。