Difference between revisions of "CSC231 Many Mov Instructions"
Line 10: | Line 10: | ||
5 ;;; | 5 ;;; | ||
6 ;;; To assemble, link, and run: | 6 ;;; To assemble, link, and run: | ||
− | 7 ;;; nasm -f elf -F stabs manyMoves.asm | + | 7 ;;; nasm -f elf -F stabs manyMoves.asm -l manyMoves.lst |
8 ;;; ld -melf_i386 -o manyMoves manyMoves.o | 8 ;;; ld -melf_i386 -o manyMoves manyMoves.o | ||
− | 9 ;;; ./ | + | 9 ;;; ./skel |
10 ;;; | 10 ;;; | ||
11 | 11 | ||
Line 46: | Line 46: | ||
41 0000004D 8A3D[00000000] mov bh, byte[a] | 41 0000004D 8A3D[00000000] mov bh, byte[a] | ||
42 | 42 | ||
− | 43 | + | 43 00000053 88D8 mov al, bl |
− | 44 | + | 44 00000055 6689D1 mov cx, dx |
− | 45 | + | 45 00000058 89DA mov edx, ebx |
46 | 46 | ||
− | 47 ;;; exit | + | 47 ;;; put your code here |
− | + | 48 | |
− | + | 49 ;;; exit | |
− | + | 50 0000005A BB00000000 mov ebx, 0 | |
− | + | 51 0000005F B801000000 mov eax, 1 | |
− | + | 52 00000064 CD80 int 0x80 | |
+ | 53 | ||
+ | 54 | ||
+ | |||
</source> | </source> | ||
Revision as of 09:10, 21 September 2012
--D. Thiebaut 10:29, 19 September 2012 (EDT)
1 ;;; manyMoves.asm
2 ;;; D. Thiebaut
3 ;;;
4 ;;;
5 ;;;
6 ;;; To assemble, link, and run:
7 ;;; nasm -f elf -F stabs manyMoves.asm -l manyMoves.lst
8 ;;; ld -melf_i386 -o manyMoves manyMoves.o
9 ;;; ./skel
10 ;;;
11
12 section .data
13 00000000 00 a db 0
14 00000001 0000 b dw 0
15 00000003 00000000 c dd 0
16
17
18 section .text
19 global _start
20 _start:
21 00000000 B803000000 mov eax, 3
22 00000005 66B80300 mov ax, 3
23 00000009 B003 mov al, 3
24 0000000B B403 mov ah, 3
25
26 0000000D B8[03000000] mov eax, c
27 00000012 A1[03000000] mov eax, dword[c]
28 00000017 66A1[01000000] mov ax, word[b]
29 0000001D A0[00000000] mov al, byte[a]
30 00000022 8A25[00000000] mov ah, byte[a]
31
32 00000028 BB03000000 mov ebx, 3
33 0000002D 66BB0300 mov bx, 3
34 00000031 B303 mov bl, 3
35 00000033 B703 mov bh, 3
36
37 00000035 BB[03000000] mov ebx, c
38 0000003A 8B1D[03000000] mov ebx, dword[c]
39 00000040 668B1D[01000000] mov bx, word[b]
40 00000047 8A1D[00000000] mov bl, byte[a]
41 0000004D 8A3D[00000000] mov bh, byte[a]
42
43 00000053 88D8 mov al, bl
44 00000055 6689D1 mov cx, dx
45 00000058 89DA mov edx, ebx
46
47 ;;; put your code here
48
49 ;;; exit
50 0000005A BB00000000 mov ebx, 0
51 0000005F B801000000 mov eax, 1
52 00000064 CD80 int 0x80
53
54