cb hop ngu
DESCRIPTION
CB Hop NguTRANSCRIPT
W!ONybumlickcolcikcoCCmtotobuwywNOW!wwPDF-XChang
e
PDF-XChang
e
NguynnhLuynBigingKthutViXL
w
.docu-track.
KhoaKthut&Cngngh-ihcQuyNhn
w
.docu-track
.
CHNGIVMtskhinimcbnvhpng
4.1.GiithiuchungHpngldngngnnglptrnhd-idngkhiuccim:-Sdngcckhiuhnhthchoccctginhtuntheomtquitcxcnh.-Mitginhnyt-ng-ng1-1vimtlnhcaCPU.Nh-vyhpngcmttnhchtrtquantrnglclinquan1-1tihotdngcaCPU.MidnglnhcahpnglunlunphnnhngmthnhngcaCPU.Cmtsthutnglinquansauy:*Assemblylanguage-Hpng-lngnnglptrnhcpthpgnvingnngmy.*ASSEMBLERlch-ngtrnhdchccch-ngtrnhvitbnghpngsangmmy.*Ccch-ngtrnhdchthngdnghinnayl-MacroAssemblercahngMicroSoft.-TurboAssemblercahngBorland.ChngtascpchyutiMacroAssembler
4.2.Ch-ngtrnhhpngutindhiuhnmtskhinimcbncahpng,chngtathxemxtmtthdnginsauy
Vd1.Vitch-ngtrnhhpnghinthktdngto(40x25)lnmnhnh/Ch-ngtrnhcdngCOM.B-c1:Vitch-ngtrnhngunmASCIIctnco.asmcodesegmentAssumeCs:code,Ds:codeORG100hBegin:movax,3int10hmovah,02hmovdl,02hint21hint20h
46
W!ONybumlickcolcikcoCCmtotobuwywNOW!wwPDF-XChang
e
PDF-XChang
e
NguynnhLuynBigingKthutViXL
w
.docu-track.
codeends
KhoaKthut&Cngngh-ihcQuyNhn
w
.docu-track
.
endbeginB-c2:DchthnhtptinOBJmasmco;B-c3:LinktthnhtptinEXELinkco;B-c4:Chuynthnhtptincomnuldngcom.exe2bincoco.comVd2:Vitch-ngtrnhdngEXEhinthcu"Choccbn"Datasegmentcaudb"Chaocacban$"Dataendscodesegmentassumecs:code,ds:dataBegin:Movax,DataMovDs,axMovDx,offsetCauMovah,9int21hmovah,4chint21hCodeendsendbegin
4.3.nhnghaondngrtgnvdngy.Chaicchnhnghaonch-ngtrnh:-Dngy(Fullsegmentdefinition)-Dngrtgn(simplifiedsegmentdefinition).Tr-cykhixydngch-ngtrnhhpngth-ng-csdngdngnhnghaony.Trongnhngnmgny,ng-itacnsdngmtph-ngphpthhailnhnghaondngrtgn.Ph-ngphpny-cpdngchoMASM5.0trivTASM1.0tri.Cchvitrtgnnginhnvch-ngtrnhth-ngdngtptinngunsngngnhnsonghinnayvncnhiutiliu,giotrnhsdngph-ngphpnhnghaonymcdukhich-ngtrnhth-ngdihn.Ldolngoivict-ngthchvinhiuch-ngtrnh-cxydngttr-cycnccldovmtph-ngphp.
47
W!ONybumlickcolcikcoCCmtotobuwywNOW!wwPDF-XChang
e
PDF-XChang
e
NguynnhLuynBigingKthutViXL
w
.docu-track.
KhoaKthut&Cngngh-ihcQuyNhnBngd-inussosnhcahaicchvitvimtch-ngtrnhminhho
w
.docu-track
.
ngin:dngnhnghaonyvnhnghaondngrtgn.Bngsosnh2cchvitch-ngtrnh:dngyvrtgn.
CchvityCchvitrtgn
StackSegmentDB64DUP(?)StackendsDataSegmentdata1DW2345hdata2DW98fhResultDWDataendsCodeSegmentassumeCs:code,Ds:data,Ss:StackMain:MOVax,data
.ModelSmall.Stack64.DATAData1DW2345hData2DW98fhResultDW?.CodeMain:Movax,@DataMovDS,AX........ENDMain
MovDS,AX.........Codeendsendmain
4.4.Ccthnhphncbncahpng4.4.1Tptinhpngngun:Tphpccphtbiuhpng(Assemblylanguagestatement).Mimtphtbiu-cvittrn1dng.cthl1lnh(AssemblylanguageInstruction)hoc1chdn(Assemblerdirective).4.4.2Lnhhpng:(Instruction)a.Khundngca1lnhhpngTrongtr-nghpchung,mtlnhhpngc4phncbnsau:[Nhn:][Tnginh][tonhng][;Ghich]Dnglnhhpngcmtscimsau:-Midngchchaduynhtmtlnhhpngvng-cli,milnhphinmtrnmtdng.-Miphnphicchnhaubngtnhtlmtkttrng.-Midngditia128kt.Cthvccphncadnglnhhpng:48
W!ONybumlickcolcikcoCCmtotobuwywNOW!wwPDF-XChang
e
PDF-XChang
e
NguynnhLuynBigingKthutViXL
w
.docu-track.
KhoaKthut&Cngngh-ihcQuyNhn-Nhn(Label):-cdngthaythachculnh.Nhnccculnh
w
.docu-track
.
khcthamchiundnglnhthngquanhncan.Nhncdibtk,songchc31ktutin-cdng,scnliassemblersbqua.vd2printloopl1nhnch1ach.Writecharcngl1nhnch1thtc.-Tnginh(Mnemonic)TnginhxcnhhnhngmCPUthchin.Tnginhcthdit2n7kt.Vd:INT21,MOVah,2h...lnhngchthcahpng.-Tonhng(Operand):xcnhccdliumculnhcnxl.Tonhngth-nglcchng,tnccthanhghi,tnt-ngtr-nghaybiuthc......-Chthch(Comment):Vngnylunbtubngduchmphy";"-csdngghicclibnh,chgii....Vngnyasemblersbquakhidchb.CckiutonhnghpngTonhngcaculnhhpngcth-cquinhd-inhiudngkhcnhau,-cgilchach.ChachbochoCPUbitcchtnhgitrthtcatonhngtrongculnh.Schach-cxcnhkhithitkCPUlcnh,khngthayi-c.CcchachtrongAssemblercnggingnh-ccchachtrongCPU.80x86cungcptngcng7chachkhcnhau,tuyvycthgomthnh3nhmchnhltonhngthanhghi,tonhngtrchngvtonhngbnh.*Tonhngthanhghi(Registeraddressingmode).Trongchachny,dliu-cl-utrongthanhghilmtonhng.Ccthanhghicthsdngtrongchachnyl:AH,BH,CH,DH,AL,BL,CL,DLAX,BX,CX,DX,SP,BP,SI,DICS,DS,ES,SSVD:ADDAX,BX(AX