A hello world in Assebly language tha would show the first number that is greater than 80
# # Simple program to stop when it gets the first number greater than 80 # .section .data number_store: #fixed name for the address holding .long 34,78,23,90,12,234,76,23,1 #Numbers to be dealt with. .section .text .globl _start _start: mov $0, %esi #initialize the esi mov number_store(, %esi, 4), %eax # load the first number on the eax register begin_loop: cmp $80, %eax #compare the value on eax with 80 jge exit_door #yup exit if the comparison met.. inc %esi mov number_store(,%esi,4), %eax #load the next number from the array jmp begin_loop #go back to the loop exit_door: mov %eax, %ebx #load the last value we have to ebx register mov $1, %eax # call the exit call here int $0x80 #interubt it
This will be running on the x86 processor.
To run it on the linux do the following from the command line:
The following command would- create the object file:
as greater.asm -o greater.o
The next one will be the linker – we need it to create the executable
ld -o greater greater.0
and run it as
./greater
Now the value would be accumulated on the register ebx.. Since the exit parameter will be stored on the ebx, and we have a value being loaded on the ebx it will be just showing that:
echo $?
this is A HELLO WORLD TO ASSEMBLY
See how you would solve these known algorithm problems
Get maximum occurring characterCheck if two strings are anagrams or not
Find the first occurence of number in the sorted array
binary tree problems with solution
Implementing tokenizer and adding tokens to the linked list
Find the pairs that makes K Complementary in the given array java solution
Kadane’s algorithm in C – Dynamic Programming
Java solution for checking anagram strings – tell if phrases are anagrams
Changing decimal number to its binary equivalent
testing k complementary pairs algorithm with junit