csce 312 lab manual - tamu computer science people …faculty.cse.tamu.edu/hlee/csce312/lab5.pdf ·...

13
CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung Lee Material originally prepared by Dr. Rabi N Mahapatra, Suneil Mohan, and Amitava Biswas Spring 2013 Department of Computer Science & Engineering Texas A&M University

Upload: hoangnga

Post on 04-Apr-2018

221 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: CSCE 312 Lab manual - TAMU Computer Science People …faculty.cse.tamu.edu/hlee/csce312/Lab5.pdf · CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung

CSCE 312 Lab manual

Lab 5: Assembly Language Programming

Instructor: Dr. Hyunyoung Lee

Material originally prepared byDr. Rabi N Mahapatra, Suneil Mohan, and Amitava Biswas

Spring 2013

Department of Computer Science & EngineeringTexas A&M University

Page 2: CSCE 312 Lab manual - TAMU Computer Science People …faculty.cse.tamu.edu/hlee/csce312/Lab5.pdf · CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung

!"#$%&'()*(+,,&-./0(/#123#2&($'42'#--5126(74-$5/#%541(#18(3,&(49(,5-3/#%4',

!"# $%&' #(%)*$+, #-./#0&11 # 1+),"#)''+231-#1)"4/)4+#*,.4,)22&"45 #6./#0&11 #/'+#678#)''+231-#1)"4/)4+9#0%&(%#&'#)#'/3'+$#)":#)#'1&4%$1-#2.:&;&+:#<+,'&."#.;#!=>?#)''+231-#1)"4/)4+5#@%&'#0&11#2)A+#-./#;)2&1&),#0&$%#!=>?#)''+231-#1)"4/)4+#0%&(%#&'#'/&$)31+#;.,#$%+#!"$+1#*,.(+''.,#(%&*'#;./":#&"#$%+#!BC#(.2*)$&31+#2)(%&"+'5#6./#0&11#)1'.#1+),"#%.0#$.#,+1)$+#$%+#DEF#(.:+#0%&(%#-./#4+"+,)11-#/'+9#0&$%#$%+#678G!=>?#)''+231-#(./"$+,*),$#0%&(%#$%+#DEF#(.2*&1+,#4+"+,)$+'#:/,&"4#(.2*&1)$&."5#6./#0&11#3+#)'A+:#$.#0,&$+9#<+,&;-#)":#&11/'$,)$+#.*+,)$&."'#.;#$%+#)''+231-#(.:+' #0%&(% # ),+ # +H/&<)1+"$ # $. # DEF # (.:+ # ;,)42+"$'5 # !" # )::&$&." # -./ #0&11 # :+<+1.* # ) # 3)'&(#/":+,'$)":&"4 # .; # $%+ # (.2*1+I # (.2*&1)$&." # )": # 1&"A&"4 # *,.(+''5 # =" # /":+,'$)":&"4 # .; # $%+#(.2*&1)$&."#*,.(+''#&'#,+1)$+:#$.#*,.(+''.,#:+'&4"#J$%)$#&'#(.2*/$+,#),(%&$+($/,+K9#*+,;.,2)"(+#)": # 3+%)<&., # .; # $%+ # '.;$0),+ # (.:+ # )": # $%+ # %),:0),+5 # =11 # $%+'+ # +"(.2*)'' # )" # +''+"$&)1#/":+,'$)":&"4 # .; # $%+ # &"$+,,+1)$+: # :.2)&"' # L # (.2*/$+, # .,4)"&M)$&."9 # .*+,)$&"4 # '-'$+2 # )":#(.2*&1+,'5#N+#0&11#/$&1&M+#D4((F#)'#$%+#2.:+1#(.2*&1+,#$.#/":+,'$)":#)11#$%+'+5

="#+I)2*1+O#=#DEF#(.:+#)":#&$'#)''+231-#+H/&<)1+"$#&'#&11/'$,)$+:#3+1.0#J$)A+"#;,.2#B,-)"$#P#Q)11),."R'#3..A#DE.2*/$+,#S-'$+2'O#=#*,.4,)22+,R'#*+,'*+($&<+FK5 #T.$+#$%)$#$%&'#)''+231-#(.:+#;,)42+"$#&'#".$#,+):-#$.#3+#+I+(/$+:#+<+"#0%+"#&$#&'#$,)"';.,2+:#$.#&$'#3&"),-G#2)(%&"+#(.:+ # +H/&<)1+"$5 #=::&$&.")1 # '/**.,$&"4 # (.:+ #3+;.,+ # )": # );$+, # $%&' # ;.11.0&"4 # )''+231- # (.:+#;,)42+"$#&'#"+(+''),-#$.#2)A+#&$#)#'$)":)1."+#+I+(/$)31+5 #@%+#(.2*1+$+#'$)":)1."+#)''+231-#(.:+#&'#)<)&1)31+#&"#B,-)"$#P#Q)11),."R'#3..A#U&45#V58#)":#&"#$%+#+I)2*1+#(.:+#;&1+#D)'/25-'F#0%&(%#()2+#)1."4#0&$%#$%+#678#$..1A&$5

:!;(748&(%4(74-$3%&(,3-(49(#1(51%&2&'(#''#0 <=>(+,,&-./0(&?35@#/&1%

&"$#S/2J&"$#WS$),$9#&"$#E./"$K#X####&"$#'/2#Y#Z[####0%&1+#JE./"$K#X#########'/2\Y#WS$),$[#########S$),$\\[#########E./"$LL[#####]#####,+$/,"#'/2[]

S/2O###*/'%1#^+3*###,,2.<1##^+'*9#^+3*###2,2.<1#7J^+3*K9^+(I###2,2.<1#_?J^+3*K9#^+:I###I.,1#^+)I9^+)I###)":1#^+:I9#^+:I####`+##a":

b..*O###2,2.<1#J^+(IK9#^+'&###)::1#^+'&9#^+)I###&,2.<1#cV9^+3I###)::1#^+3I9^+(I###&,2.<1#cL_9^+3I###)::1#^+3I9^+:I###`"+##b..*

a":O###,,2.<1#^+3*9^+'*###*.*1#^+3*###,+$##

Page 3: CSCE 312 Lab manual - TAMU Computer Science People …faculty.cse.tamu.edu/hlee/csce312/Lab5.pdf · CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung

!"#$%&'( )*+,)*--'#.&'(/ )!"#$%&'( ) %- ) 01') 0""& ) 01*0 ) 0(*+-2"(#-) 01')1%31) &'4'& )-"5(6')6",') 0")

'7'650*.&' ) #*61%+' ) 6",'8 )91'('*- ) :*--'#.&'(; ) %- ) 01' ) 0""& ) 01*0 ) 0(*+-2"(# ) <"5( ) *--'#.&<)

&*+35*3')6",')0")#*61%+')6",'8)!"#$%&'(-)2%(-0)0(*+-2"(#)1%31)&'4'&)-"5(6')6",'-)0")'=5%4*&'+0)

*--'#.&<)6",'->)01'+)*--'#.&'()6"#$"+'+0)"2)01')6"#$%&'():*--'#.&'-;)01')*--'#.&<)6",')0")

6"(('-$"+,%+3)#*61%+')2"(#*0-8)?"0')*0)01%-)$"%+0)01*0)01')3'+'(*0',)#*61%+')2"(#*0)6",')%-)+"0)

('*,<)0").')'7'650',)*-)<'08)@1%-)%-)'7$&*%+',)%+)-5.-'=5'+0)$*(*3(*$1-8

@A")$1*-')6"#$%&*0%"+>)&%+B'(>)".C'60)6",'>)'7'650*.&')*+,)&"*,'(/)D%22'('+0)$*(0-)"2)01')-"5(6')

6",'-)#%310).')A(%00'+)%+)-'$*(*0')-"5(6')6",')2%&'-).50)01'<)*(')2%+*&&<)6"#$%&',)0"3'01'()0")

3'+'(*0')*)-%+3&').%+*(<)'7'650*.&')2%&'8)@",*<)1%31)&'4'&)-"5(6')6",')6"#$%&*0%"+)%-)*605*&&<)*)

0A")-0'$)$("6'--8)E+)01')2%(-0)-0'$)*&&)01')-'$*(*0')-"5(6')6",')2%&'-)*('):6"#$%&',;)0")3'+'(*0')

-'$*(*0'):".C'60)6",';)2%&'-)%+)#*61%+')&*+35*3')2"(#*0>)01'+)%+)01')-'6"+,)-0'$)*&&)01'-')".C'60)

6",'- )*(' ):&%+B',;) 0"3'01'( ) 0")3'+'(*0' )* )-%+3&')'7'650*.&'8 )91'+)<"5)5-'):366; ) 01'-') 0A")

$1*-'-)F):6"#$%&*0%"+;)*+,):&%+B%+3;)*(')6*((%',)"50)"+')*20'()"01'()*50"#*0%6*&&<)*-)*)('-5&0)"2)*)

-%+3&')6"##*+,)F)

:366))-"5(6'G2%&'86)))H")'7'650*.&'G2%&';)

5+&'--)<"5)-$'6%2%6*&&<)*-B)01'):366;)0"),")"+&<)01')2%(-0)$1*-').<)5-%+3)01'):F6;)2&*3)I*-B-)366)0")

-0"$)*20'()01')6"#$%&*0%"+)$("6'-->).'2"(')&%+B%+3J8)91'+)<"5),")01*0)<"5)0<$')F)

:366))H6))-"5(6'G2%&'K86)))H")".C'60G2%&'K8";)

!"#$%&'(%")*$+",-..

!"#$%&*0%"+)$("$'(

L--'#.&%+3

M%+B%+3

N"5(6')6",')%+)1%31)

&'4'&)&*+35*3')

I:!;O)PQR@RL?J

L--'#.&<)6",'I-J

Q.C'60)6",'I-J)%+)#*61%+')2"(#*0

S7'650*.&')6",')%+)#*61%+')2"(#*0

/%01*23*4(-$.*%)*,"#$%&'(%")*$+",-..

0,,,(%4'(

L60%4*0'-O,(%4'-

Page 4: CSCE 312 Lab manual - TAMU Computer Science People …faculty.cse.tamu.edu/hlee/csce312/Lab5.pdf · CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung

!"##$$%#$$&'()#*+,-.*/0#$$$%'$'12*#3+,-.*/0'4$

56-&$,-)&3$#'78-.93-':$869&*$"*:*)93*&$36*$'12*#3$#';*$,-.*&$<-36$9:$*=3*:&-':$!0'4>$-:$36*$&*#':;$.-:?-:"$869&*$@'($(&*$36*$'12*#3$,-.*$A')$,-.*&$-,$36*)*$7(.3-8.*$&'()#*$9:;$'12*#3$,-.*&B$3'$"*:*)93*$36*$,-:9.$&-:".*$*=*#(391.*0$56*:$@'($&6'(.;$3@8*$C

!"##$$$'12*#3+,-.*D0'$$'12*#3+,-.*/0'$$$%'$*=*#(391.*+,-.*4

E#3(9..@$!"##4$-&$3<'$3''.&$!#'78-.*)4$9:;$!.-:?*)4$#'71-:*;$-:3'$':*$AF-"0$DB0$56'("6$36*$'12*#3$,-.*&$9)*$-:$79#6-:*$.9:"(9"*$,')793$1(3$36*@$#9:$:'3$1*$*=*#(3*;$-:;-G-;(9..@>$1*#9(&*$36*@$9)*$:'3$#'78.*3*$#';*&$3693$#9:$9#3(9..@$)(:$9:;$8)';(#*$7*9:-:",(.$)*&(.3&$1@$36*7&*.G*&0$56*$.-:?-:"$8)'#*&&$-&$9#3(9..@$9$".(-:"$8)'#*&&$<6-#6$9;;&$9;;-3-':9.$".(*$#';*$3'$36*$7(.3-8.*$'12*#3$#';*&$3'$6'.;$36*7$3'"*36*)$3'$,')7$36*$&-:".*$&39:;9.':*$*=*#(391.*$#';*$,-.*0$H:$36*$'36*)$69:;$.'9;*)$-&$36*$89)3$',$36*$HI$<6-#6$9#3(9..@$.'9;&$36*$*=*#(391.*$-:$36*$7*7')@$9:;$8)*89)*&$-3$,')$*=*#(3-':0$56*$.'9;-:"$8)'#*&&$-&$9.&'$,9-).@$#'78.-#93*;>$8*)698&$@'($<-..$.*9):$-3$.93*)$-:$9$HI$#'()&*0$I'7*3-7*&$1@$!.'9;*)4$&'7*$8*'8.*$9#3(9..@$7*9:&$36*$.-:?*)$A*&8*#-9..@$36*$.-:?*)$3693$;'*&$-3&$2'1$93$)(:$3-7*$;()-:"$!;@:97-#$.-:?-:"4>$1(3$:'<$@'($<'(.;$?:'<$36*$;-,,*)*:#*0$J'($#9:$&**$36*$)*.93-G*$)'.*$',$36*$.'9;*)$-:$F-"0$K0DL$-:$M)@9:3N&$1''?>$8"0$LOK0$

5<' $ 869&* $ #'78-.93-': $ 9:; $ .-:?-:" $ 3' $ *:91.* $7';(.9)-P93-':Q $R*G*.'8*)& $<9:3*; $ 3' $ 69G*$7';(.9)-3@ $ -: $ 36*-) $ #';* $ ;()-:" $ 988.-#93-': $ ;*G*.'87*:30 $ S-G*: $ @'() $ 89&3 $ *=8*)-*:#* $ -:$;*&-":-:" $ ;-"-39. $ 69);<9)* $ @'( $ &6'(.; $ 1* $ 91.* $ 3' $ 988)*#-93* $ 36* $ :**; $ ,') $7';(.9)-P93-':0$T';(.9)-P93-': $9..'<& $!#':#())*:3 $*:"-:**)-:"40 $ U: $ 36-& $ ,')7$', $ *:"-:**)-:" $8)9#3-#* $ &*:-')$7*71*)& $ ', $ 9 $ .9)"* $ *:"-:**)-:" $ 3*97 $ ,-)&3 $ 9")** $<-36 $ *9#6 $ '36*) $ 91'(3 $ 36* $ !)*V(-)*7*:3&$&8*#-,-#93-':&4 $', $ 36* $*:3-)* $988.-#93-':0 $56*:$ 36*@$;-G-;* $ 36* $*:3-)* $988.-#93-': $ -:3' $&*G*)9.$69);<9)* $ 9:;W') $ &',3<9)* $ !,(:#3-':9.W.'"-#9. $ 7';(.*&40 $ 56*@ $ &8*#-,@ $ 36* $ )*V(-)*7*:3$&8*#-,-#93-':&$',$*9#6$7';(.*$&'$3693$<6*:$-:3*")93*;$36*&*$7';(.*&$&6'(.;$8)'8*).@$<')?$<-36$*9#6$'36*)$3'$79:-,*&3$36*$-:3*:;*;$1*69G-')0$H:#*$36*$7';(.*&$69G*$1**:$&8*#-,-*;$36*:$36*@$9&&-":$36*$7';(.*$;*&-":$39&?&$9:;$)*&8':&-1-.-3-*&$3'$'36*)$7*71*)&$A!39&?$9&&-":7*:34B0$56-&$*:91.*& $ 36* $ 3*97 $7*71*)& $ 3' $ ;*&-":> $ ;*G*.'8 $ 9:; $ 3*&3 $ G9)-'(& $7';(.*& $ #':#())*:3.@ $ 9:;$8)'")*&&-G*.@$-:3*")93*$ 36*7$3'$,-:9..@$"*3$ 36*$988.-#93-':0 $56-&$*:"-:**)-:"$;-&#-8.-:*$79?*&$;*G*.'87*:3$',$.9)"*$988.-#93-':&$79:9"*91.*0$56-&$&',3<9)*$*:"-:**)-:"$)93-':9.*$<9&$1*6-:;$36*$:**;$3'$69G*$7(.3-8.*$7';(.9)$#';*$&*"7*:3&$<6-#6$9)*$&3)(#3()*;$9&$,(:#3-':&>$8)'#*;()*&>$#.9&&*&$*3#0$-:&3*9;$',$9$&-:".*$7':'.-36-#$&'()#*$#';*0$

X'<*G*) $ 36-& $ &#6*7* $ )*V(-)*; $ 3693 $ &'7*1';@ $ -:3*")93*& $ 36* $G9)-'(& $ #'78':*:3& $ 3' $"*3 $ 36*$988.-#93-': $<')?-:"0 $56-& $ 2'1 $ -& $;':*$1@$ 36*$ .-:?*)0 $ U3 $ .-:?& $9.. $ 36* $#'78':*:3& $ 3'"*36*) $ 3'$"*:*)93*$9$&-:".*$,(:#3-':9.$988.-#93-':0$56-&$.-:?-:"$#9:$1*$;':*$93$#'78-.*$3-7*$9:;W')$)(:$3-7*0 $F') $:'<$@'($<-.. $':.@$ .*9):$91'(3 $!&393-# $ .-:?-:"40 $5'$9..'<$")*93*) $,.*=-1-.-3@ $ -: $ 36*$988.-#93-':&>$7';*):$!)(:$3-7*4$&@&3*7&$9.&'$9..'<&$)(:$3-7*$;@:97-#$.-:?-:"$<6*:$36*$8)'")97$-&$.'9;*;$9:;$*=*#(3*;0$

Y-:?*)$8*),')7&$3<'$8)-79)@$39&?&$C$!&@71'.$)*&'.(3-':&4$9:;$!)*.'#93-':40$Z6*:$89)97*3*)&$9)*$89&&*;$3'$,(:#3-':&$')$<6*:$3<'$#';*$&*"7*:3&$A,(:#3-':&W$8)'#*;()*&$')$#.9&&$7*36';&B$&69)*$9$".'19.$')$*=3*):9.$G9)-91.*$AG9)-91.*$<-36$!*=3*):4$7';-,-*)$-:$![4B$#'77':$7*7')@$.'#93-':&$9)*$9#3(9..@$&69)*;$1*3<**:$;-,,*)*:3$#';*$&*"7*:3&>$*G*:$36'("6$36*@$79@$1*$)*,*))*;$1@$;-,,*)*:3$G9)-91.*$:97*&$A!&@71'.&4B$-:$;-,,*)*:3$#';*$&*"7*:3&0$U:$36*$,'..'<-:"$*=978.*$C

Page 5: CSCE 312 Lab manual - TAMU Computer Science People …faculty.cse.tamu.edu/hlee/csce312/Lab5.pdf · CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung

! ""#$%&!'(!)*+&,!-.&%%/0123$)1%4,&!567,$/0.89/$,!:;$)7<.&%%/=1.*;!>*<67;$)?@A$)7!+*$)=$)7!*;?1(!1.*;!>*;?9BC@D

:;$)7<.&%%/=-E&%%/!F/;%,G)2@A;&74;)!HA

I

""#$%&!J(!)*+&,!-:;$)70129/$,!:;$)7<.&%%/=1.*;!>:*66&,<67;$)?@D

:;$)7K=:*66&,<67;$)?!@AIA

L.& !:*;*+&7&; ! -*<67;$)?2 ! *), ! -:*66&,<67;$)?2 ! *174*%%M ! :/$)76 ! 7/ ! * ! 6$)?%& !+&+/;M ! %/1*7$/)(!7./4?.!$7!$6!;&K&;;&,!46$)?!7F/!,$KK&;&)7!)*+&6!=-6M+N/%62@!$)!7.&!+*$)=@!*),!7.&!:;$)7<.&%%/=@!K4)17$/)6"!1/,&!6&?+&)76!67/;&,!$)!7F/!,$KK&;&)7!K$%&60 !O7! $6! %$)P&;Q6! R/N!7/!;&6/%9&!7.&+!7/!*!1/++/)!+&+/;M!%/1*7$/)!F.&)!7.&!K$)*%!&S&147*N%&!$6!+*,&0!L.&!%$)P&;!*%6/!*;;*)?&6"R/$)6!/;!-;&%/1*7&62!7.&6&!7F/!6&:*;*7&!1/,&!6&?+&)76!7/!K/;+!*!6$)?%&!&S&147*N%&0!

T$7./47 ! 7.$6 ! 7F/ ! :.*6& ! 61.&+& ! U ! 7;*)6%*7$/) ! K/%%/F&, ! NM ! *47/+*7&, ! %$)P$)? ! /; ! ?%4$)?(!:;/?;*++&;6!F/4%,!.*9&!7/!&S:%$1$7%M!*),!9&;M!+&7$14%/46%M!1/+:*;7+&)7*%$V&!*),!&S1%46$9&%M!;&6&;9&!+&+/;M!K/;!&*1.!6&17$/)!/K!7.&!1/,&6!7/!*9/$,!$)*,9&;7&)7!+&+/;M!1/;;4:7$/)!NM!*)/7.&;!1/,&!6&?+&)70!L.*7!F/4%,!.*9&!N&&)!W4$7&!%*N/;!$)7&)6$9&(!:*$)K4%!*),!&;;/;!:;/)&!K/;!*!%*;?&!*::%$1*7$/)!F$7.!+4%7$:%&!K4)17$/)6(!1%*66&6!*),!1/+:/)&)760!

E/F!7/!46&!?11Q6!$)N4$%7!*66&+N%&;X!Y174*%%M!7.&!1/+:$%*7$/)!:;/1&66!$6!*?*$)!*!1/+N$)*7$/)!/K!7F/ ! 64NU:;/1&66&6 !Z ! -1/+:$%*7$/) !:;/:&;2 ! *), !-*66&+N%$)?2 ! =#$?0 !'@0 ! -[/+:$%*7$/) !:;/:&;2!:.*6&!,/&6!7F/!7.$)?6!Z!-7;*)6%*7$/)2!*),!/:7$+$V*7$/)2!=)/7!6./F)@(!F.$1.!M/4!F$%%!%&*;)!%*7&;!$) ! *,9*)1&, ! 1/+:47&; ! *;1.$7&174;& ! *), ! 1/+:$%&; ! 1/4;6&60 ! L.& ! -,;$9&;2 ! 1/+:/)&)7 ! /K ! 7.&!1/+:$%&;!*17$9*7&6!7.&6&!:;/1&66&6!$)!6&W4&)1&(!*47/+*7$1*%%M!$)6$,&!?11!/)!N&.*%K!/K!7.&!46&;0

L.&!$)N4$%7!*66&+N%&;!$)6$,&!?11(!F.$1.!1*%%&,!-?*62(!$6!*9*$%*N%&!7/!46&;6!7/!1/+:$%&!*66&+N%M!1/,&6!=$K!M/4!:;/9$,&!*66&+N%M!1/,&!K$%&6!F$7.!&S7&)6$/)!-062!$)67&*,!/K!-012@0!L.&;&K/;&!?11!1*)!?&)&;*7&!*66&+N%M!1/,&6!K;/+!*!?$9&)!-[2!6/4;1&!1/,&!K$%&!F.&)!M/4!+&)7$/)!7.&!-U\2!K%*?(!F.$1.!*6P6!$7!67/:!*K7&;!7.&!K$;67!-1/+:$%*7$/)!:;/:&;2!:.*6&0!L/!?&)&;*7&!*66&+N%M!&W4$9*%&)7!/K!*!-[2!1/,&!M/4!6./4%,!7M:&!U

-?11!!U\!!6/4;1&<K$%&'01!!!U/!6/4;1&<K$%&'062!

L.&!/47:47!$6!7.&!*66&+N%M!1/,&!K$%&(!F.$1.!M/4!1*)!/:&)!7/!%&*;)!./F!*!-[2!1/,&!$6!7;*)6K/;+&,!7/!&W4$9*%&)7!*66&+N%M!1/,&0!]/4!F$%%!)/7&!7.*7!$)!*,,$7$/)!7/!7.&!1/;&!%/?$1!1/,&!F.$1.!M/4!F;/7&(!*,,$7$/)*%!1/,&!.*6!N&&)!*,,&,0!L.&6&!*,,$7$/)*%!1/,&6!&$7.&;!1*+&!K;/+!7.&!67*),*;,!Y^\O!-[2!*),"/;!7.&!6M67&+!1*%%!%$N;*;M!K/;!7.&!?$9&)!_\!=`$)4S!$)!M/4;!1*6&@0!]/4!6./4%,!)/F!;&+&+N&;!7.&!*17$9$7$&6!/K!`*N!'!=[.*:!J@0

a;/1&66/;!6$+4%*7/;6!*),!7.&$; !9*;$/46!;/%&6X !O)!;&*%U%$K& !-:;/,417$/)2!&)9$;/)+&)7( !1/+:$%&,!1/,&6!*;&!&S&147&,!/)!:.M6$1*%!:;/1&66/;60!E/F&9&;!%/*,$)?!*),!7&67$)?!*!1/,&!/)!*!:.M6$1*%!

Page 6: CSCE 312 Lab manual - TAMU Computer Science People …faculty.cse.tamu.edu/hlee/csce312/Lab5.pdf · CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung

!"#$%&&#"'(&'$)*+%"&#*%',-.'/(*%'$#-&)*(-01'&#'#2/%-','34("/),56'!"#$%&&#"'(&')&%.7'89(&'4("/),5'!"#$%&&#"'(&',$/),55:','!"#0",*';9($9'$,-'")-'#-':#)"'.%&</#!7'=/'$,-'"%,.'/9%'*,$9(-%'5,-0),0%'$#.%'&!%$(2($,55:';"(//%-'2#"','3/,"0%/6'!"#$%&&#"',-.'0%-%",/%'/9%'*%*#":',-.'"%0(&/%"&'&/,/%',&'/9%'"%,5'!9:&($,5'!"#$%&&#"';#)5.'9,.'/9(&'&,*%'!"#0",*'+%%-'%>%$)/%.'#-'(/7'?#*%/(*%'&)$9','!"#0",*'(&',5&#'$,55%.'3!"#$%&&#"'%*)5,/#"6'#"'3!"#$%&&#"'&(*)5,/#"6'#"'3(-&/")$/(#-'&(*)5,/#"67'@*)5,/#"&'#"'&(*)5,/#"&'2#"'/9%'%-/("%'&:&/%*',"%',5&#',4,(5,+5%7'89%&%'&(*)5,/%'#"'%*)5,/%'/9%'%-/("%'+%9,4(#"'#2'/9%'&:&/%*1'!"#$%&&#"'$9(!&1'*#/9%"+#,".',-.',55'/9%'=A'&:&/%*&7'89%&%',"%'#2/%-')&%.'+:'&:&/%*'.%4%5#!%"& ',-.'.%&(0-%"& ' /# '%4,5),/% 'A?1 '<%"-%5 '$#.%& ',-.'%*+%..%.'&:&/%*',!!5($,/(#-&7'?(*)5,/#"&',"%'%&!%$(,55:'4,5),+5%'/#'/"#)+5%&9##/'$#.%&1'/9(&'(&'+%$,)&%'(/'(&'!#&&(+5%'/#'&%%',-.'/",$<&'4,5)%&'(-&(.%'/9%'"%0(&/%"',-.'*%*#":'5#$,/(#-&'(-&(.%','&(*)5,/#"';9(5%','$#.%'(&'&/%!!%.'/9"#)09'#-%'(-&/")$/(#-',/','/(*%7'B9%"%,&'(-'"%,5'!9:&($,5'!"#$%&&#"1'/9%'%-/("%'$#.%';(55'0%/'%>%$)/%.'&#'2,&/'/9,/':#)';(55'-#/'0%/',-:'#!!#"/)-(/:'/#'<-#;';9,/'9,.'9,!!%-%.'(-'+%/;%%-'/9%'(-&/")$/(#-&7'

A-% '$,- '9,4% '+#/9 ' &#2/;,"% ',-.'9,".;,"% '+,&%. ' CDEFG'(*!5%*%-/,/(#-&H ' &(*)5,/#"& ' 2#" ','9,".;,"% ' $#*!#-%-/ ' 5(<% ' !"#$%&&#"7 ' ?#2/;,"% ' +,&%. ' &(*)5,/#"& ' ;9($9 ' &(*)5,/%& ' 9,".;,"%'&:&/%*&',"%'&5#;%"'/9,-'/9%',$/),5'9,".;,"%1';9%"%,&'9,".;,"%'+,&%.'&(*)5,/#"&',"%'2,&/%"'/9,-'/9%'&#2/;,"%'&(*)5,/#"&7'89%'+%-%2(/'#2'&#2/;,"%'&(*)5,/#"&',"%'/9,/'/9%:'$,-'+%'"%,.(5:'*#.(2(%.1',-. ' (-4,&(4%5: ' (-&/")*%-/%. ' /# ' -#/% ' ,-: ' ,"+(/",": ' (-/%"-,5 ' &/,/% ' ,/ ' ;(557 'B(/9 ' /9% ' !"%&%-/'/%$9-#5#0:1 '9,".;,"% '+,&%. ' &(*)5,/#"& '.# '-#/ ' "%,.(5: '!"#4(.% ' &)$9 ' 25%>(+(5(/: ' ,-. ' "($9-%&&7'?(*)5,/#"&'*,:'#-5:'&(*)5,/%','!,"/'#2'/9%'&:&/%*'2)-$/(#-,5(/:'#"'5(*(/%.'+%9,4(#",5',&!%$/&1'&#'(/'(&'(*!#"/,-/'/#'<-#;';9,/'+%9,4(#"'/9%'&(*)5,/#"'(&',$/),55:'&(*)5,/(-01',-.'9#;'/#'(-/%"!"%/'/9%'"%&)5/&7

?!%$(2($(/:'#2'0$$I'G'!5,/2#"*'(&','$#*+(-,/(#-'#2'/9%'9,".;,"%'C!"#$%&&#"',-.'/9%'!%"(!9%",5&H1'A?',-.'/9%'$#*!(5%"7'0$$'(&',4,(5,+5%'2#"'#-5:'2%;'&!%$(2($'A?'5(<%'J(-)>1'K?L',-.'M,$'A?7'F$$'$,- '#-5: '$#*!(5%1 ',&&%*+5% '#" ' 5(-< '$#.%& '2#" '&!%$(2($ '&%/ '#2 '3/,"0%/6 '!"#$%&&#"&7 ' =2 '-#'&!%$(2($'/,"0%/'(&'*%-/(#-%.'/9%-'+:'.%2,)5/'0$$',&&)*%&'/9%'/,"0%/'/#'+%'/9%'9#&/'!"#$%&&#"'#-';9($9'(/'(&'$)""%-/5:'")--(-07'N#/%'/9,/'0$$O&',&&%*+5%"'$,-'#-5:')-.%"&/,-.',&&%*+5:'5,-0),0%&'2#"'/9%'/,"0%/'!"#$%&&#"&7'89(&'*%,-&'4,-(55,'0$$O&',&&%*+5%"';#)5.'-#/'+%',+5%'/#')-.%"&/,-.'PQR',&&%*+5:'5,-0),0%1')-5%&&'&#*%+#.:'*#.(2(%&'0$$'/#'.#'/9,/7

G8S8',-.'=-/%5',&&%*+5:'&:-/,>I'89(&'!%"/,(-&'/#'&#)"$%T.%&/(-,/(#-'#".%"(-07'=-'=-/%5'&:-/,>'/9%'2("&/'#!%",-.'(&'/9%'.%&/(-,/(#-1',-.'/9%'&%$#-.'#!%",-.'(&'/9%'&#)"$%';9%"%,&'(-'G8S8'(/'(&'#!!#&(/%7'=-/%5'&:-/,>',&&%*+5:';(55'&,:'UA!T$#.%'.&/'&"$U'+)/'G8S8'&:-/,>';(55'&,:'(/',&'UA!T$#.%'&"$'.&/U7'89(&'(&'0##.'/#'<-#;7'?#':#)';#)5.'<-#;';9,/'/9%'PQR'/##5&%/',-.'/9%'/%>/'+##<'2#55#;&7'0$$O&',&&%*+5%"')&%&'G8S8'&:-/,>7

V#;' /# '%*+%.',&&%*+5: ' (-&/")$/(#- ' (-&(.% '3W6'$#.%I '89%'0##.'-%;&' (& ',&&%*+5: ',-.'3W6'!"#0",**(-0'$,-'+%'*(>%.';(/9'%,$9'#/9%"'!"#4(.%.'/9%'$#*!(5%"'&)!!#"/&'(/7'F$$'2#"'J(-)>'&)!!#"/&'=GXY'&/,/%*%-/'%*+%..(-0'(-'3W67'89%'+,&($'2#"*'#2'/9%'%*+%..%.'&/,/%*%-/'(&'%(/9%"'#2'/9%'2#55#;(-0'/;#',5/%"-,/(4%'C,-:'#-%'$,-'+%')&%.H'Z

!"#$%!""&#'()*+,-&%./*001(!23*,(-*&#'&--234

55!"#55$%!""&#'() * +,-&%./ * 0067"8 * 23 * +!"& * !"# * 9&):,;- * 2" * 7"&- * <,;*",#&8=234*&("&

Page 7: CSCE 312 Lab manual - TAMU Computer Science People …faculty.cse.tamu.edu/hlee/csce312/Lab5.pdf · CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung

!"#$%&'()*

!"#$%#&'()*+!,)*+-,%./)01)2&'+")34+)-&53+53")&6)+!,)3&)+-,)10

77!"#77$$%#&'()*+!,)*+-,%.)0184+)"!#+)!")!9&'+)10

8& ) :5-(;<+ )#;(3:=(+ ) -&5"+-;3:'+ ) !""+#9(> ) "3!3+#+53" ) ;"+ ) ?@5@3A ) &B ) ?/A ) !63+B ) +!-4 ) !""+#9(>):5"3B;-3:&5C)(:D+)34:")E

77!"#77)$%#&'()*+9,C)*+!,@5@3%))))))))))%#&'()FGHC)*+":@5@3%)))))))))))%#&'9)*!4C)$*+-,.%./

!"#$%&'()(*#+,'&-).(/#I)J++D"K))

0"#1%2,)'%+#3..45/)LMN)!""+#9(+BC)LMN)OPQ)":#;(!3&B)!5<)R--K

6"#789%:-);%/#!"#$%&'(#)

SB:#!B>)3&=:-"

GK Q""+#9(>)(!5R;!R+)=B&RB!##:5RK

IK Q""+#9(>)(!5R;!R+)+T;:'!(+53")&6)?UA)-&<+)-&5"3B;-3"K)

VK W!":-);5<+B"3!5<:5R)&6)34+)-&#=:(!3:&5)=B&-+""K

XK Y&J)?UA)6;5-3:&5 )-!((" )!B+ )4!5<(+< )9> ) 34+ )-&#=:(+BZ(:5D+B )!5<) 34+ )&=+B!3:5R)">"3+#K

[K Y&J ) 3& ) +#9+< ) !""+#9(> ) -&<+ ) :5 ) ?UA ) -&<+ ) 3& ) R!:5 ) (&J ) (+'+( ) !--+"" ) 3& ) 34+)=B&-+""&B\")6+!3;B+"K

P+-&5<!B>)3&=:-"

NK ]&(+)&6)!)":#;(!3&B)!5<):3")(:#:3!3:&5"C)4&J)3&);"+)!5)OPQ)&B)=B&-+""&B)":#;(!3&BK)

^K W!":-);5<+B"3!5<:5R)&6) 34+)"3B;-3;B+)&6) 34+)!""+#9(>)-&<+)R+5+B!3+<)9>)?R--A)-&#=:(+B)6&B)!5)O53+()=B&-+""&BK

MK W!":-);5<+B"3!5<:5R)&6)34+)(:5D:5R)=B&-+"")$:53+B!-3:&5)&6)34+)-&#=:(+BZ(:5D+B)J:34)34+)&=+B!3:5R)">"3+#.K

<"#=(5-',:-).(5/

GK 3>)5#)5#&(#)(+);)+,&4#4&8#&55)*(?%(-) 3&)9+)";9#:33+<)"+=!B!3+(>K)L&;)#!>)<:"-;"")34+)=B&9(+#)J:34)&34+B)#+#9+B")&6)34+)-(!""C)9;3)>&;)"4&;(<)=B+"+53)>&;B)&J5)"&(;3:&5")6&B)34+)R:'+5)=B&9(+#"K)

IK _"+)34+)LMN)<:"3B:9;3:&5)34!3)>&;)-!5)<&J5(&!<)6B&#`)433=`00-"!==K-"K-#;K+<;0=;9(:-0G+0=;9(:-0"3;<+53"K43#()$a&&D);5<+B)U4!=3+BZX.K)L&;)-!5)+:34+B)<&J5(&!<)34+)"&;B-+)-&<+)!5<)-&#=:(+):3)&5)>&;B)#!-4:5+C)&B)>&;)#!>);"+)34+)=B+-&#=:(+<)9:5!B:+")34!3)!B+)!(B+!<>)=B+"+53K)

Page 8: CSCE 312 Lab manual - TAMU Computer Science People …faculty.cse.tamu.edu/hlee/csce312/Lab5.pdf · CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung

!" #$%&'&()%*+&',-.')//&%0+1'2$3&/'2)4'0&'5$643'74'89&':;1-.<2$3&='5$+3&>'74'89&'/)%&'

,-.'8$$+?78'74/8)++)87$4"',$6'%)1'8>)4/5&>'89&/&')43'89&'1)/@'17/'074)>7&/'8$')'2$%%$4'

A$>?74B'5$+3&>'0&5$>&'>64474B'89&'/7%6+)87$4/"'

C" D$ 'B&4&>)8& ' 89& ',-. '$0E&28 ' 2$3& ' 5$> ' 89& ',-. ' )//&%0+1 ' 2$3& ' F5$> ' &()%*+& ' 89& ' 57+&'

:)/6%"1/=G'81*&'89&'5$++$A74B'H

";1)/''')/6%"1/

D97/'A7++'B&4&>)8&')4'$0E&28'57+&'A789'4)%&':)/6%"1$="

I" D$ ' &(&268& ' 897/ ' $0E&28 ' 57+& ' B&4&>)8&3 ' 74 ' 89& ' *>&J7$6/ ' /8&*@ ' $4 ' 89& ' :,-. ' 74/8>6287$4'

/7%6+)8$>'F17/G='81*&'89&'5$++$A74B'H

";17/'')/6%"1$

,$6'A7++'B&8'8$'/&&'9$A'89&'J)+6&/'74'89&'>&B7/8&>/')43'%&%$>1'+$2)87$4/'29)4B&')/'>&/6+8'

$5'897/"'K'8>)2&'$5'89&')0$J&'2$%%)43/'5$>'89&'*>$B>)%'4)%&3':)/6%"1/=@'A9729'2)4'0&'

5$643'74 ' 89&'&()%*+& ',-.')//&%0+1'2$3&'5$+3&> ' 74' 89&'8$$+' 74/8)++)87$4@ ' 7/ ' 7++6/8>)8&3'

0&+$A"

!"#$%&'()#*&%+(*,&%-#

L" M&)3'N>1)48O/'0$$?'/&287$4'C"L@'!"L'8$'!"P@'!"LI@'C"!"Q'8$'C"!"I@'P"L'8$'P"R@'P"LC

Q" S$%*+&8&'>&)374B')++'89&'4&2&//)>1'>&)374B'%)8&>7)+/@'87*/')43')33787$4)+'%)8&>7)+/'B7J&4'

74'89&'S9)*'I'$5'897/'+)0'%)46)+"

T6/&>U+746('%7/2VW'";1)/')/6%"1/

T6/&>U+746('%7/2VW'";17/')/6%"1$

#8$**&3'74'C.'/8&*/')8'XS'Y'Z(!)"''[(2&*87$4'\]^D\@'SS'_YL'#YZ'`YZ

S9)4B&/'8$'>&B7/8&>/a

b&)(a'''Z(ZZZZZZZZ''''''Z(ZZZZ)023

b&2(a'''Z(ZZZZZZZZ''''''Z(ZZZZZZQC

b&0(a'''Z(ZZZZZZZZ''''''Z(55555555

b&/*a'''Z(ZZZZZZZZ''''''Z(ZZZZZZ5-

b&0*a'''Z(ZZZZZZZZ''''''Z(ZZZZZLZZ

b&/7a'''Z(ZZZZZZZZ''''''Z(ZZZZ)ZZZ

S9)4B&/'8$'%&%$>1a

Z(ZZ5Za'Z(ZZZZZZZZ''''''Z(ZZZZZLZZ

Z(ZZ5Ca'Z(ZZZZZZZZ''''''Z(ZZZZZZ!R

Z(ZZ5-a'Z(ZZZZZZZZ''''''Z(ZZZZZZLC

Z(ZZ52a'Z(ZZZZZZZZ''''''Z(ZZZZZZZC

Page 9: CSCE 312 Lab manual - TAMU Computer Science People …faculty.cse.tamu.edu/hlee/csce312/Lab5.pdf · CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung

!"#$%&'()*&*#+,#-,

!".#/',01&2#.3#!"#$%&''&()*+$,-.$/0&+012$34&5#$%01+2#*67$)8$+)9#*$:

)*6$);<=>??)%$3)$@<7$A

)B$)CD=E#'8#$A

)BF=<CC=

E

!"#$%$#$&'(#)(*)+

G? H0&9)5#$6"#$IJK$188#2L'M$'1*+N1+#$4&5#$%&0$6"#$,-.$/0&+012?$

O? P#0)%M$6")8$188#2L'M$4&5#$N8)*+$#)6"#0$6"#$IJK$6&&'$8#6?$4)53#Q##$6"#$#R12/'#$IJK$4&5#$%)'#8?$S#15$T0M1*6U8$L&&V$8#46)&*$W?G$6&$W?K?

W? S#/&06$M&N0$188N2/6)&*8$N8#5$6&$6#86$6")8$4&5#?

!"6#/',01&2#63#X&0$6"#$%&''&()*+$,-.$/0&+012$34&5#$%01+2#*67$:

)*6$<;V=>??%&0$3)*6$)BF=$)$YD=$)CC7$A

<$B$)ZO=V$B$<CG=

E

!"#$%$#$&'(#)(*)+

G? H0&9)5#$6"#$IJK$188#2L'M$'1*+N1+#$4&5#$%&0$6"#$,-.$/0&+012?$

O? P#0)%M$6")8$188#2L'M$4&5#$N8)*+$6"#$IJK$6&&'$8#6$1*5$8616#$M&N0$188N2/6)&*8?$

!"7#/',01&2#73#X&0$6"#$%&''&()*+$6(&$,-.$/0&+0128$:

[[H0&+012$G;$%)'#$*12#$,'1LD\/0&LW\G?4.])*4'N5#$Y865)&?"@)*6$21)*3)*6$10+4;$4"10$Z10+9^_7A

/0)*6%3`a#''&;$(&0'5b*`7=

Page 10: CSCE 312 Lab manual - TAMU Computer Science People …faculty.cse.tamu.edu/hlee/csce312/Lab5.pdf · CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung

!"#$!%&'()

**+!,-!./&01&234"&%./"&54.6789!,6:80;<=>3%<4$?"&@A#?3,;BC3%#&/.3%D3%#&.!-<1&<B.!&E.!-FGHIJ

3%#&3&K&L(3MM(9!3%#2DNOB"&F.4$"&,2&&3&3A&P?Q%N1&3I(!"#$!%&'(

)

!"#$%$#$&'(#)(*)+

L; RA"&-<<&#,&-"%"!.#"&#B"&"S$3F.4"%#&.AA"/64T&<,?"A&2,!&#B"A"&#U,&5V=&9!,-!./A;&+!,F3?"&#B"&9!3%#,$#A&D,!&<,9T&9.A#"&3%&#B"&!"9,!#I&,2&#B"A"&#U,&.AA"/64T&<,?";

0; W"%"!.#"&#B"&"X"<$#.64"&<,?"A&2!,/&#B"&-"%"!.#"?&.AA"/64T&<,?"A;

:; V,/9.!"&.%?&.%.4TY"&#B"&A#!$<#$!"&,2&#B"&#U,&.AA"/64T&<,?"A&-"%"!.#"?&6T&-<<1&3?"%#32T&#B" & F.!3,$A & .AA"/64T & <,?" & A"-/"%#A & .%? & #B"3! & !"A9"<#3F" & !,4"A & ,% & #B" & 9!3%#,$#A;&Z9"<323<.44T&A#.#"&UB.#&#B,A"&.AA"/64T&<,?"&A#.#"/"%#A&.!"&.<B3"F3%-;&[,&%,#&A#.#"&#B"&,6F3,$A&2.<#A&43\"&#B3A&U.T&]&5^#B3A&A#.#"/"%#&3A&/,F3%-&#B"&F.4$"&2!,/&/"/,!T&4,<.#3,%&5Y=&#,&!"-3A#"!&P".X^;=;&_,$&AB,$4?&!.#B"!&/"%#3,%&UB.#&9$!9,A"&#B"A"&A#.#"/"%#A&.!"&A"!F3%-;&!"#$%& W4.%<" & #B!,$-B & `;L & #, & `;a1 & ,2 & b!T.%#cA & 6,,\ & .%? & #B3A & 43%\ & ]&B##9d**"%;U3\36,,\A;,!-*U3\3*efg8hAA"/64T*WhZ8ZT%#.X

&'()*+,-./0)(%)i,44,U3%-&A3%-4"&5V=&234"&.!"&-3F"%&j

**i34"&L1&%./"?&54.6789!,6k8/.3%;<=>3%<4$?"&@A#?3,;BCF,3?&9!3%#8B"44,DI(3%#&/.3%D3%#&.!-<1&<B.!&E.!-FGHIJ

9!3%#8B"44,DI(!"#$!%&'(

)

F,3?&9!3%#8B"44,DIJ9!3%#2DNl"44,1&U,!4?Q%NI(

)(

!"#$%$#$&'(#)(*)+

Page 11: CSCE 312 Lab manual - TAMU Computer Science People …faculty.cse.tamu.edu/hlee/csce312/Lab5.pdf · CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung

!" #$%$&'($)'**$+,-.)/01$*)20&)(34*)24-$")50+6'&$)4()74(3)(3$)'**$+,-.)/01$)8$%$&'($1)2&0+)(3$)24&*()24-$)%'+$1)9-',:;6&0,<;!"/=)02)(3$)6&$>40?*)6&0,@)<A)'%'-.B$)'%1)$C6-'4%)307)(3$)2?%/(40%)/'--)96&4%(;3$--0DE=)7'*)+'($&4'-4B$1)4%*41$)(3$)/0+6?($&)D/0+64-$&A)FG)'%1)(3$)3'&17'&$E)20&)(3$)',0>$)$C'+6-$")H*$)248?&$*)'%1)($C()1$*/&46(40%*)(0)$C6-'4%"!"#$%)I$'1)*$/)<"JA)J"!K)02)L&.'%(M*),00N"))

&'()*+,-./0)(%)O0--074%8)(70)95=)24-$*)'&$)84>$%)P

QQO4-$)!A)%'+$1)9-',:;6&0,:;+'4%"/=>041)6&4%(;3$--0DER4%()+'4%D4%()'&8/A)/3'&)S'&8>TUEV

6&4%(;3$--0DER&$(?&%)WR

X

QQO4-$)YA)%'+$1)9-',:;6&0,:;6&4%("/=@4%/-?1$)Z*(140"3[>041)6&4%(;3$--0DEV

6&4%(2D\]$--0A)70&-1^%\ERXR

!"#$%$#$&'(#)(*)+

!" #$%$&'($)'**$+,-.)/01$*)20&)(3$*$)(70)24-$*")_3$%)?*4%8)(3$*$)'**$+,-.)24-$*)8$%$&'($)(3$)0,`$/()/01$)24-$*A)(3$%)-4%N)(3$)8$%$&'($1)0,`$/()24-$*)(0)+'N$)')*4%8-$)$C$/?(',-$)24-$")H*$)8//)(00-*$(")a&0>41$)6&4%(0?()D0&)/06.)6'*($E)02)(3$)'**$+,-.)24-$*"

Y" 50+6'&$ ) (3$ ) '**$+,-. ) /01$* ) 8$%$&'($1 ) 4% ) '/(4>4(. ) @ ) ! ) 02 ) (34* ) 6&0,-$+ ) '8'4%*( ) (3$)'**$+,-.)/01$)8$%$&'($1)4%)(3$)6&$>40?*)6&0,-$+)@)K")b*)(3$&$)'%.)1422$&$%/$)307)(3$)2?%/(40%)/'--)96&4%(;3$--0DE=)7'*)+'($&4'-4B$1)20&)(34*)$C'+6-$)c)dC6-'4%)(3$)1422$&$%/$*)42)'%.A)4%)(3$)'**$+,-.)/01$*)8$%$&'($1)4%)(34*)6&0,-$+)74(3)(3'()02))6&0,-$+)@)K"

&'&)*+,-./0)&%)_3$)20--074%8)95=)/01$)4*)84>$%)P)

)))))))))) QQO4-$)%'+$1)9-',:;6&0,e"/=@4%/-?1$)Z*(140"3[4%()>$&.;2'*(;2?%/(40%D4%()4EV

42)D)D4SeK)f!E)[)!WYKE)&$(?&%)4ffR$-*$)&$(?&%)WR

X

4%()+'4%D4%()'&8/A)/3'&)S'&8>TUEV

4%()4R4gKWR

Page 12: CSCE 312 Lab manual - TAMU Computer Science People …faculty.cse.tamu.edu/hlee/csce312/Lab5.pdf · CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung

!"#$%&'()*+,&-$.%#/$,012-+,/&,,#,#3,456$(7,0+"89&13%9&-$.%#/$'#:,:;"+%-"$,<;

=

!"#$%$#$&'(#)(*)+

>? @+A"#%+,%*+,1B/0+,CDE,./5+,3-.*,%*1%,%*+,C0+"89&13%9&-$.%#/$':E,#3,#F!2+F+$%+5,#$,GHI,/",JKLM,133+FB28,21$N-1N+,+FB+55+5,#$,%*+,CDE,./5+?,

,)#&-(.)/("011)#(&23&*(.45($1(6778('$1"&(677(*)&'(1)#(/1*&9'#01*(.45:(;<(=)/(/'&(.458(=)/(>$??(@0%&(#)($2A?&2&1#(#@&(&1#$9&(A9)B902:

!"#$%&@+15,D*1!,L7,3+.,L?>O,#$,P"81$%Q3,B//R?,G/-,.1$,123/,"+15,%*+,&/22/A#$N,2#$R3,S

*%%!TUU*/F+?!1.B+22?$+%UB#229N#UB#22UF+$%/"913FD?%V%,

*%%!TUUAAA?#B#B2#/?/"NUN&+"NU25!UWDDSJ$2#$+SK33+FB28SXYZ)Y?*%F2

*%%!TUU%25!?/"NUXYZ)YU*%F293#$N2+UK33+FB28SXYZ)YU

*%%!TUUAAA?.3?0#"N#$#1?+5-U[.2.O\UN..S#$2#$+S13F?!5&

*%%!TUUAAA?#BF?./FU5+0+2/!+"A/"R3U2#B"1"8U2S#1?*%F2

*%%!TUUAAA?#B#B2#/?/"NUN&+"NU25!UWDDSJ$2#$+SK33+FB28SXYZ)Y?*%F2

M? ]#3.-33,A*1%,!"+.1-%#/$3,8/-,$++5,%/,%1R+,1B/-%,A*#.*,"+N#3%+"3,%/,-3+,/",$/%,-3+?,G/-,.1$ , 5#3.-33 , %*#3 , R++!#$N , #$ ,F#$5 , 1 ,F/"+ , "+12#3%#. , ./$%+V% , 3-.* , 13 , JKLM , 1$5 , J$%+2,!"/.+33/"3,#&,8/-,2#R+?,X/A+0+",5#3.-33#/$,B13+5,/$,GHI,#3,1"+,123/,1..+!%1B2+,#&,8/-,.1$,./FF-$#.1%+,8/-",!/#$%,1$5,133-F!%#/$3?,D2+1"28,#5+$%#&8,A*#.*,"+N#3%+",8/-,A/-25,-3+7,1$5,A*#.*,"+N#3%+",8/-,A/-25,$/%,-3+,1$5,A*8?,G/-,.1$,&#$5,%*+,.2-+3,#$,%*+,%#!?

!"#%&*%%!TUU./-"3+3?+.+?-#-.?+5-U+.+L^<UB//R3U21BF1$-12U.S!"/NSF#V#$N?*%F2,,

'()&*+,-./0&)%&G/-",F1$1N+",13R+5,%/,./F!1"+,%*+,3!++5,!+"&/"F1$.+3,/&,%A/,!"/.+33/",B13+5,383%+F3,'*1"5A1"+7 ,Y_,1$5,./F!#2+" , %/N+%*+": ,A*#.*,*+,A1$%+5,%/,B-8,%/ ,"-$,*#3 ,N"1!*#.12,./F!-%+",1#5+5,5+3#N$,'DK]:,1!!2#.1%#/$?,G/-,&#N-"+5,/-%,%*1%,%*+,B+3%,A18,%/,\-#.R28,./F!1"+,%*+#",!+"&/"F1$.+3,#3,%/,./F!1"+,%*+,+V+.-%#/$,%#F+,/&,1,./5+,'!/!-21"28,.122+5,CB+$.*F1"R3E:,/$,%*+3+,%A/,C%1"N+%E,*1"5A1"+,383%+F3?,G/-,&/-$5,%*1%,N..,.1$,N+$+"1%+,./5+,&/",1,01"#+%8,/&,!"/.+33/"3?,G/-,#5+$%#&#+5,%*1%,%*+3+,F1.*#$+3,1"+,B13+5,/$,!"/.+33/"3,A*#.*,*10+,"+N#3%+"3,%*1%,.1$,!"+.#3+28,./-$%,.2/.R,.8.2+3?

!"#$%$#$&'(#)(*)+

>? J5+$%#&8,%A/,"+12S2#&+,!"/.+33/"3,A*#.*,!"/0#5+,"+N#3%+"3,%/,"+./"5,!"/.+33/",.2/.R,.8.2+3?,@+!/"%,%*+,$1F+3,/&,%*+3+,"+N#3%+"3?

Page 13: CSCE 312 Lab manual - TAMU Computer Science People …faculty.cse.tamu.edu/hlee/csce312/Lab5.pdf · CSCE 312 Lab manual Lab 5: Assembly Language Programming Instructor: Dr. Hyunyoung

!" #$%&'()* + ',-%%+.'/-0%'1 +2-34%553-5+)3-+6,(4,+.0441+4/&+0%&%-/'% +7(&/-*+%8%49'/7:%5 +3-+/55%;7:*+43$%5"+!"#$%<-*+95(&0+',%+43;;/&$%&;/&+044=+3&+',%+:(&98"45+;/4,(&%"

>" ?82:/(&+/+2:/&+'3+2-%4(5%:*+-%43-$+%8%49'(3&+'(;%+3)+/+43$%+95(&0+',%5%+-%0(5'%-5"+@-3A($%+',% + (&5'-9;%&'/'(3& + 43$% + )-/0;%&' + (& + BCD + /55%;7:* + :/&09/0%E + 6(', + 4:%/- + '%8'9/:+%82:/&/'(3&" +F559;%+',/'+ ',%+2-34%553-+43;2:(%5 +6(',+ ',%+BCD+#GF"+F559;%+',/' + ',%+&/;%+3)+',(5+>!+7('+4:34H+439&'%-+-%0(5'%-+(5+.I44&'1+J',(5+(5+3A%-+/&$+/73A%+',%+BCD+-%0(5'%-5+;%&'(3&%$+(&+*39-+'%8'+733HK"+ +<,(5+-%0(5'%-+0(A%5+',%+A/:9%+&9;7%-+3)+4:34H+4*4:%5 + ,/22%&%$ + 53 + )/- + /&$ + (' + 3A%-):365 +7* + -3::(&0 +3A%- + '3 + L%-3" + +F559;% + ',/' + ',%+2-34%553-+52%%$5+/-%+7%'6%%&+MN,L+/&$+O+N,L"+B39+&%%$+&3'+A%-()*+',(5+43$%+3&+BCD+5(;9:/'3-"

O" J/K +P(54955+/:: + ',%+ :(;('/'(3&5 +3)+ ',(5 +/22-3/4,+J)-3;+',%+2-%A(395+/4'(A('*K" +Q/&+*39+%))%4'(A%:* +;%/59-% +A%-* + :/-0% +%8%49'(3& + '(;%5R +S36+ :/-0% + %8%49'(3&5 + '(;%5 + J'3 + ',%+&%/-%5'+;(4-35%43&$K+4/&+*39+;%/59-%R+S36+/449-/'%+4/&+',%+;%/59-%;%&'5+7%R+T,/'+/-% + ',% + -%/53&5 + )3- + 594, + (&/449-/4(%5R +J7K+U3-+;%/59-(&0+A%-*+:/-0%+%8%49'(3&+'(;%5+J5/*+(&+',%+3-$%-+3)+;(&9'%5K+6,/'+/:'%-&/'%+;%',3$+639:$+*39+5900%5'R+?82:/(&+',/'+/:'%-&/'%+54,%;%"+T,/'+(5+',%+:(;('/'(3&+3)+',(5+/:'%-&/'(A%+54,%;%R+J#)+*39+95%+',%+0%''(;%3)$/*JK+/22-3/4,E+*39+;95'+%82:/(&+',%+'63+;35'+43;;3&+%--3-5+',/'+439:$+3449-+()+('+6/5+-9&+3&+/+;3$%-&+;9:'(2-34%553-+5*5'%;+6(', + / + ;9:'(V'/5H(&0 + E + ;9:'(V95%- + 32%-/'(&0 + 5*5'%; + 594, + /5 + W(&98"K

!"#$+ G%% + ',% + 43$% + (& + 2-37:%;XM + 3) + W/7M" + F:53 + -%5%/-4, + 3& + ',% + (559%5 + 3) + 95(&0+.0%''(;%3)$/*JK1+'3+'(;%+*39-+43$%+3&+/+;3$%-&+;9:'(V43-%+Y+;9:'(V2-34%553-+5*5'%;"

Z" F559;%+',/'+',%+.)3-1+:332+0(A%&+(&+2-37:%;+X+!+(5+*39-+.7%&4,;/-H1+43$%"+#&5'-9;%&'+',/'+0(A%&+.Q1+539-4%+43$%+6(',+59('/7:%+%;7%$$%$+/55%;7:*+43$%+)-/0;%&'5+($%&'()(%$+(&+',%+2-%A(395+/4'(A('*+X+!+3)+',(5+2-37:%;"+JF559;%+',/'+',%+.Q1+43;2(:%-+4/&+59223-'+BCD+/55%;7:*+%;7%$$(&0E+/5+044+$3%5+)3-+#F>!K"+B39+$3&='+,/A%+'3+/4'9/::*+43;2(:%Y-9&+',(5+(&5'-9;%&'%$+43$%+6(',+/&*+43;2(:%-+3-+5(;9:/'3-+'33:5%'+)3-+',(5+/4'(A('*"

D" #& + :/7VM + J/&$ + :/7V>K + 6% + 95%$ + 4:34H[0%''(;%J\K + '3 + 37'/(& + '(;%5'/;25" + <,% + 8CDV/-4,('%4'9-%+43&'/(&5+/+,/-$6/-%+-%0(5'%-+4/::%$+<GQ+J<(;%G'/;2Q39&'%-K+6,(4,+4/&+7%+-%/$+95(&0+',%+]<PGQ+/55%;7:*+(&5'-94'(3&"+<,%+<GQ+5'3-%5+',%+.&9;7%-+3)+4:34HV'(4H51+5(&4%+',%+;(4-32-34%553-+6/5+-%5%'"+S36%A%-E+95(&0+',(5+(&5'-94'(3&+3&+;3$%-&+5*5'%;5+6(',+;3-%+',/&+3&%+43-%Y2-34%553-+/&$+/+;9:'(V'/5H(&0+32%-/'(&0+5*5'%;+(5+/+7/$+($%/"+T,*R+W(5'+/'+:%/5'+'63+(559%5+',/'+4/&+4-32+92+()+',%+!"#$%+/22-3/4,+3)+'(;(&0+(5+95%$"