bitwise operators
1
bitwise operators 1 Changelog Changes made in this version not - - PowerPoint PPT Presentation
bitwise operators 1 Changelog Changes made in this version not seen in fjrst lecture: 6 Feb 2018: arithmetic right shift: x86 arith. shift instruction is sar to sra 6 Feb 2018: logical left shift: use shl consistently 6 Feb 2018: exercise C
1
1
byte: 1 2 3 4 5 6 7 8 9 halt nop 1 rrmovq/cmovCC rA, rB 2 cc rA rB irmovq V, rB 3 F rB rmmovq rA, D(rB) 4 0 rA rB mrmovq D(rB), rA 5 0 rA rB OPq rA, rB 6 fn rA rB jCC Dest 7 cc call Dest 8 ret 9 pushq rA A 0 rA F popq rA B 0 rA F V D D Dest Dest
2
3
4
4
5
5
5
6
6
6
7
8
8
8
9
9
10
11
11
x × 2−y 12
13
13
14
14
15
16
17
✭✭✭✭✭✭✭✭✭✭✭✭ ❤❤❤❤❤❤❤❤❤❤❤❤
✭✭✭✭✭✭✭✭✭✭✭✭ ✭ ❤❤❤❤❤❤❤❤❤❤❤❤ ❤
18
✭✭✭✭✭✭✭✭✭✭✭✭ ❤❤❤❤❤❤❤❤❤❤❤❤
✭✭✭✭✭✭✭✭✭✭✭✭ ✭ ❤❤❤❤❤❤❤❤❤❤❤❤ ❤
18
19
19
20
20
21
21
22
23
24
24
24
24
25
25
25
26
27
28
29
30
31
32
33
33
33
34
35
35
36
36
37
37
38
39
39
40
40
41
✓ ❙ ❙
✁ ❆ ❆
❍❍
42
✓ ❙ ❙
✁ ❆ ❆
❍❍
42
43
✭✭✭✭✭✭✭✭✭✭✭✭✭ ✭ ❤❤❤❤❤❤❤❤❤❤❤❤❤ ❤
44
✭✭✭✭✭✭✭✭✭✭✭✭✭ ✭ ❤❤❤❤❤❤❤❤❤❤❤❤❤ ❤
44
✭✭✭✭✭✭✭✭✭✭✭✭✭ ✭ ❤❤❤❤❤❤❤❤❤❤❤❤❤ ❤
44
45
45
46
46
46
47
47
48
48
49
49
49
50
51
52
53
54
55
56
57
58
59
60
60
61
62
62
62
−231
+230
+229
+22
+21
+20
0111 1111… 1111 1000 0000… 0000 1111 1111… 1111
63
−231
+230
+229
+22
+21
+20
−1 1 231 − 1 −231 −231 + 1
0111 1111… 1111 1000 0000… 0000 1111 1111… 1111
63
−231
+230
+229
+22
+21
+20
−1 1 231 − 1 −231 −231 + 1
0111 1111… 1111 1000 0000… 0000 1111 1111… 1111
63