need help understanding the movzbl call in this function
问题 So I'm trying to write some C code by looking at the assembly here: pushl %ebp movl %esp, %ebp movl 12(%ebp), %eax addl 8(%ebp), %eax movzbl (%eax), %eax movsbl %al,%eax popl %ebp ret I see that I have two variables, and they are being added together, then I'm getting lost when looking when the function starts calling movzbl and movesbl. What's going on here? 回答1: A corresponding C function would be something like char fn(char * string, int index) { return string[index]; } Specifically, the