DIV BX OVERFLOW
Toán tử giạ INCLUDE
7.2.3 Toán tử PTR và toán tử giạ LABEL
Chương 7: Mạng và các chê đoơ địa chư 87 Trongcácchươngtrướcchúngtađãbiêtraỉngcáctoánhángcụamoơtleơnh phạicùnglối,tứclàcùnglàbytehoaịccùnglàtừ.Nêumoơttoán hánglàhaỉngsô thìASMsẽchuyeơnchúngthànhlốitươngứngvớitoánhángkia.Vídú,ASMsẽ thựchieơnleơnh MOV AX,1nhưlàleơnhtoánhángtừ.Tươngtự,ASMsẽthực hieơnleơnhMOV BH,5nhưlà leơnhbyte.Tuynhieđn,leơnh
MOV [BX],1 là khođnghợp leơvìASMkhođngbiêttoánhángchưbởithanh ghiBXlàtoánhángbytehaytoánhángtừ.Cótheơkhaĩcphúcđieăunàybaỉng toántử PTRnhưsau:
MOV BYTE PTR [BX],1 ;toánhángđíchlàtoán hángbyte MOV WORD PTR [BX],1 ;toánhángđíchlàtoán hángtừ Vídú:ThaykýtựtthànhTtrongchuoêiđượcđịnhnghĩabởi:
MSG DB ‘thisisamessage’
Cách1:Dùngchêđoơđịachưgiántiêpthanhghi:
LEA SI,MSG ;SItrỏtớiMSG MOV BYTEPTR [SI],’T’ ;thaytbaỉngT Cách2:Dùngchêđoơđịachưchưsô:
XOR SI,SI ;xoáSI MOV MSG[SI],’T’ ;thaytbởiT
ỞđađykhođngcaăndùngPTRvìMSGlàbiênbyte.
NóichungtoántửPTRđượcdùngđeơkhaibáolối(type)cụatoán háng.Cú phápchungcụanónhưsau:
TypePTR address_expression TrongđóType:byte,word,Dword
Addres_expression:làcácbiênđãđượckhaibáobởiDB,DW,DD. Vídúchúngtacó2khaibáobiênnhưsau:
DOLLARS DB 1AH CENTS DB 52H
vàchúngtamuôndichuyeơnDOLLARSvàoAL,dichuyeơnCENTS vàoAH chưbaỉng moơtleơnhMOVduynhât.Cótheơdùngleơnh sau:
MOV AX,WORDPTR DOLLARS;AL=DOLLARSvàAH=CENTS
ToántửgiạLABEL
Cómoơtcáchkhácđeơgiạiquyêtvânđeă xungđoơtveălốitoánhángnhưtređn baỉngcáchdùngtoántửgiạLABELnhưsauđađy:
MONEY LABEL WORD DOLLARS DB 1AH
CENTS DB 52H
CácleơnhtređnđađykhaibáobiênMONEYlàbiêntừ với2thànhphaănlà DOLLARSvàCENTS.TrongđóDOLLRAScócùngđịa chưvớiMONEY.Leơnh
MOV AX,MONEY Tươngđươngvới2leơnh:
Chương 7: Mạng và các chê đoơ địa chư 88 MOV AL,DOLLARS
MOV AH,CENTS
Vídú:Giạsửraỉngsôlieơuđượckhaibáonhưsau: .DATA A DW 1234h B LABEL BYTE DW 5678h C LABEL WORD C1 DB 9Ah C2 DB 0bch
Hãychobiêtcácleơnhnàosauđađylàhợpleơvàkêtqụacụaleơnh. a. MOV AX,B
b. MOV AH,B c. MOV CX,C
d. MOV BX,WORDPTRB e. MOV DL,WORDPTRC f. MOV AX,WORDPTRC1 Giại :
a. khođnghợpleơ b. hợpleơ,78h c. hợpleơ,0BC9Ah
d. hợpleơ,5678h e. hợpleơ,9Ah
f. hợpleơ ,0BC9Ah