This C code:
#include <stdio.h>
#define uint64 unsigned long long
unsigned long long main() {
unsigned int i = 0x50da;
unsigned int j = 0xc0ffee;
uint64 k = 0x7ea707a11ed;
k ^= ~(i & j) | 0x7ab00;
return k;
}
compiles to this assembly code:
0x555555555129 <main 4>: movl $0x50da,-0x4(%rbp)
0x555555555130 <main 11>: movl $0xc0ffee,-0x8(%rbp)
0x555555555137 <main 18>: movabs $0x7ea707a11ed,%rax
0x555555555141 <main 28>: mov %rax,-0x10(%rbp)
0x555555555145 <main 32>: mov -0x4(%rbp), 