## Assembly Language

Every question need as asm type(note pad).

1. Celo – write a program to throw three dice, 100 times. Add each triplet and count how many times each occurred. Print the results as a bar graph. EC Determine which total appeared the most.

2. Write a program to create 120 random numbers from 1 to 15. Count how many times each appeared. Print out the each number and its counts.

After you print them out, print them out in order. (Think, this is jokingly easy)

3. Create a method called multiply. Use it to multiply read in to integers and multiply them and the print out: 13*6 = 78 (assume the ints were 3 and 6)

Hint, use ecx and adding only.

4. Count how many times each letter occered in th two boxes. Type in all upper as lower case (Only print out counts 97-122)

Zip-a-dee-doo-dah, zip-a-dee-ay My, oh, my, what a wonderful day Plenty of sunshine headin' my way Zip-a-dee-doo-dah, zip-a-dee-ay!

So far I only learn chapter 1-5, so only can use code between these chapters.

Example:

.data

number dword 1

plus byte " + ",0

equals byte " = ",0

dash byte "============================================",0

.code

main PROC

call clrscr

mov ecx, 10

outer:

push ecx

mov ecx, 10 ; 1 to 10

table:

mov eax,number; number table

call writedec

mov edx,offset plus

call writestring

mov ebx,11

sub ebx,ecx ;these two lines give me 1,2,3,4,5,6,7,8,9,10

mov eax,ebx

call writedec

mov edx,offset equals

call writestring

call writedec

call crlf

loop table

mov eax , lightblue+ 16*black

call settextcolor

mov edx,offset dash

call writestring

mov eax,white+16*black

call settextcolor

;**********************************************

mov eax, 2000

call delay

;***********************************************

call crlf

inc number

pop ecx

loop outer

exit

main ENDP

end main

TITLE counting an array elements (countng.asm) (special.asm)

;This

;Last updated sept 8, 2017 Written by

INCLUDE Irvine32.inc

.data

array dword 1,2,1,3,2,2,3,1,1,1,1,2,3,3,3,3,2,2,2

occurred byte " occurred ",0

times byte " times ",0

count byte 0,0,0,0

.code

main PROC

mov ecx,lengthof array

mov eax,0

mov esi,0

counting:

mov edi,0

mov eax,array[esi]

inc count[edi]

call writedec

call crlf

movzx eax,count[edi]

call writedec

call crlf

loop counting

exit

main ENDP

end main

TITLE reandom numbers (randomnum.asm) (special.asm)

;This

;Last updated sept 8, 2017 Written by

INCLUDE Irvine32.inc

.data

blank byte " ",0

dash byte "+=====================================",0

count byte 0,0,0,0

.code

main PROC

call randomize

mov edx, offset blank

mov ecx, 100

printnum:

mov eax, 3

call randomrange

call writedec

mov esi, eax

inc count[esi]

call writestring

loop printnum

call crlf

mov esi,1

movzx EAX,count[esi]

call writedec

call crlf

mov esi,2

movzx EAX,count[esi]

call writedec

call crlf

mov esi,3

movzx EAX,count[esi]

call writedec

exit

main ENDP

end main

Need a similar essay? We have qualified writers who can assist. Click ORDER NOW to get a special bonus- Up to 18% Discount Offer!!!