Skip to content

Commit 2d469c3

Browse files
committed
tracking src folder
1 parent af300dc commit 2d469c3

File tree

5 files changed

+149
-4
lines changed

5 files changed

+149
-4
lines changed

.gitignore

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
11
# Ignore all files
2-
*
2+
/src/projects/**
33

44
# Ignore all files in subdirectories
55
#/src/projects/**
66

77
# Unignore all with extensions
8-
!*.*
8+
!/src/projects/*.*
99

1010
# Unignore all files in subdirectories
11-
/*
11+
/src/projects/*
1212
!/src/projects/*.asm
1313
!/src/projects/*.c
1414
!/src/projects/*.sh
1515
!/src/projects/*.md
1616
!/src/projects/*.txt
1717
!/src/projects/*/
18-
/*/**
18+
/src/projects/*/**
1919

2020
!/src/projects/**/*.asm
2121
!/src/projects/**/*.c
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
; AddressingModes.asm
2+
; x86 architecture
3+
; Intel specification
4+
section .data
5+
name db 'Zara Ali ',0xA,0xD
6+
brkln db '', 0xa ; breakline
7+
brklen equ $ - brkln
8+
9+
section .text
10+
global _start
11+
12+
_start:
13+
;writing the name 'Zara Ali'
14+
mov edx,9 ;message length
15+
mov ecx, name ;message to write
16+
mov ebx,1 ;file descriptor (stdout)
17+
mov eax,4 ;system call number (sys_write)
18+
int 0x80 ;call kernel
19+
20+
mov edx, brklen;show a breakline
21+
mov ecx, brkln
22+
mov ebx, 1
23+
mov eax, 4
24+
int 0x80
25+
26+
mov [name], dword 'Nuha' ; Changed the name to Nuha Ali
27+
28+
;writing the name 'Nuha Ali'
29+
mov edx,8 ;message length
30+
mov ecx,name ;message to write
31+
mov ebx,1 ;file descriptor (stdout)
32+
mov eax,4 ;system call number (sys_write)
33+
int 0x80 ;call kernel
34+
35+
mov edx, brklen;show a breakline
36+
mov ecx, brkln
37+
mov ebx, 1
38+
mov eax, 4
39+
int 0x80
40+
41+
42+
mov eax,1 ;system call number (sys_exit)
43+
int 0x80 ;call kernel
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
; HelloWorld.asm
2+
; x86 architecture
3+
; Intel specification
4+
5+
section .data
6+
msg db "Hello world from Assembly!",0xA,0xD
7+
len equ $ - msg
8+
9+
section .text
10+
global _start
11+
12+
_start:
13+
14+
mov eax, 4 ; ssize_t sys_write(unsigned int fd, const char * buf, size_t count) (write in console)
15+
mov ebx, 1 ; sys_write argv #1 (unsigned int), file descriptor (stdout)
16+
mov ecx, msg; sys_write argv #2 (char *), message to write
17+
mov edx, len; sys_write argv #3 (size_t), message length
18+
int 0x80 ; interrumpt system (call kernel)
19+
20+
mov eax, 1 ; sys_exit
21+
int 0x80 ; call kernel
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
; InputNumber.asm
2+
; x86 architecture
3+
; Intel specification
4+
section .data
5+
userMsg db 'Please enter a number: ' ;Ask the user to enter a number
6+
lenUserMsg equ $-userMsg ;The length of the message
7+
dispMsg db 'You have entered: '
8+
lenDispMsg equ $-dispMsg
9+
10+
section .bss ;Uninitialized data
11+
num resb 5
12+
13+
section .text
14+
global _start
15+
16+
_start:
17+
mov eax, 4
18+
mov ebx, 1
19+
mov ecx, userMsg
20+
mov edx, lenUserMsg
21+
int 80h
22+
23+
;Read and store the user input
24+
mov eax, 3
25+
mov ebx, 2
26+
mov ecx, num
27+
mov edx, 5 ;5 bytes (numeric, 1 for sign) of that information
28+
int 80h
29+
30+
;Output the message 'The entered number is: '
31+
mov eax, 4
32+
mov ebx, 1
33+
mov ecx, dispMsg
34+
mov edx, lenDispMsg
35+
int 80h
36+
37+
;Output the number entered
38+
mov eax, 4
39+
mov ebx, 1
40+
mov ecx, num
41+
mov edx, 5
42+
int 80h
43+
44+
; Exit code
45+
mov eax, 1
46+
mov ebx, 0
47+
int 80h
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
; ShowStars.asm
2+
; x86 architecture
3+
; Intel specification
4+
section .data
5+
msg db 'Displaying 9 stars',0xa ;a message
6+
len equ $ - msg ;length of message
7+
s2 times 9 db '*'
8+
brkln db '', 0xa ; breakline
9+
brklen equ $ - brkln
10+
11+
section .text
12+
global _start
13+
14+
_start:
15+
mov edx,len ;message length
16+
mov ecx,msg ;message to write
17+
mov ebx,1 ;file descriptor (stdout)
18+
mov eax,4 ;system call number (sys_write)
19+
int 0x80 ;call kernel
20+
21+
mov edx,9 ;message length
22+
mov ecx,s2 ;message to write
23+
mov ebx,1 ;file descriptor (stdout)
24+
mov eax,4 ;system call number (sys_write)
25+
int 0x80 ;call kernel
26+
27+
mov edx, brklen;show a breakline
28+
mov ecx, brkln
29+
mov ebx, 1
30+
mov eax, 4
31+
int 0x80
32+
33+
mov eax,1 ;system call number (sys_exit)
34+
int 0x80 ;call kernel

0 commit comments

Comments
 (0)