1。
.(1)立即尋址 沒有
(2)直接尋址 7237H
(3)使用BX的寄存器尋址 沒有
(4)使用BX的間接尋址 637DH
(5)使用BX的寄存器相對尋址 0D5F0H
(6) 基址變址尋址 8E18H
(7)相對基址變址 004FH
2。根據下列要求,寫出相應的彙編指令。
(1)ADD DX,BX
(2) ADD AL,[BX][SI]
(3) ADD [BX][0B2H], CX
(4) MOV AX,2A59H ADD [0524H] ,AX
(5) ADD AL ,0B5H
3。
(1)寄存器間接尋址
MOV BX,OFFSET [BLOCK][0AH]
MOV DX ,[BX]
(2)寄存器相對尋址
MOV SI,OAH
MOV DX,[BLOCK][SI]
(3)基址變址尋址
MOV BX ,BLOCK
MOV SI,OAH
MOV DX,[BX][SI]
沒人來看,還是要寫~~
4。現有(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100)=12H,(20101)=34H,(20102)=56H,(20103)=78H,(21200)=2AH,(20201)=4CH,(21202)=B7H,(21203)=65H,試說明下列各條指令執行完後,AX寄存器的内容。
(1)MOV AX,1200H 1200H
(2) MOV AX,BX 0100H
(3) MOV AX,[1200] 4C2AH 注意,是字單元!!
(4)MOV AX,[BX] 3412H 同上
(5)MOV 1100[BX] 4C2AH
(6) MOV AX,[BX][SI] 7856H
(7) MOV AX,1100[BX][SI] 65B7H
5。
(1) 7CD9H (2) 1200H (3) 6319H
6。 MOV BX,2000H
LES DI ,[BX]
MOV AX, ES:DI
7。轉向位址OBJ的值分别為:(1)064DH (2)0691H (3)05E0H 注意有符号數的符号位~~
8。(1) MOV AX,0ABH 立即數尋址 無實體位址
(2)MOV AX,BX 寄存器尋址 同上
(3)MOV AX,[100] 直接尋址 20100H
(4)MOV AX,VAL 直接尋址 20050H
(5) MOV AX,[BX] 寄存器間接尋址 20100H
(6) MOV AX,ES:[BX] 直接尋址 21100H
(7) MOV AX,[BP] 寄存器間接尋址 20010H
(8)MOV AX,[SI] 同上 200A0H
(9) MOV AX,[BX+10] 寄存器相對尋址 20110H
(10)MOV AX,VAL[BX] 同上 20150H
(11) MOV AX,[BX][SI] 基址變址尋址 201A0H
(12) MOV AX,VAL[BX][SI] 相對基相變址尋址 201F0H
9。
(1)的指令: MOV AX, [BX][0CH] MOV ZREO ,AX
(2) 的指令: MOV AX,ARRAY[BX] MOV ZREO,AX
10。 MOV AX,TABLE 是把符号位址TABLE裡的内容送到AX裡,指令執行完後,(AX)=1234H
LEA AX,TABLE 是把符号位址TABLE 的有效位址(這裡是偏移量)送到指定寄存器AX裡,指
令執行完後,(AX)=0032H
11。執行完指令後,(AX)=1E00H
12。 LEA AX,CSTRING
MOV DL,AX
MOV DH,[AX+6]
13。這個,,圖,很麻煩了,是以就不畫了~~大家可以看一下課本上P51--P53,很清楚,看完了這道韪也會了~~~
14。LES BX,[2000]
MOV AX,ES:[BX]
注意:一開始我寫的是: MOV AX,ES:[8000H],後來看到題目裡要求寫兩條指令,是以一條就不行了,就要畫蛇添足~~~
15。 運算結果 SF,ZF,CF,OF各位的值(從左至右依次往下~)
(1) 74D4H 0 0 0 0
(2) A5C1H 1 0 0 1
(3) 4240 H 0 0 1 0
(4) 0000 H 0 1 1 0
16。 接上表~
(1) 5D14 0 0 0 0
(2) A870 1 0 0 1
(3) D870 1 0 0 0
(4) 34E4 0 0 1 0
17。
(1).MOV AX,Z ;把Z送到AX
SUB AX,X ;Z-X
ADD AX,W ;W+(Z-X)
MOV Z,AX ;結果儲存在Z中
(2). MOV AX,R ;R送到AX中
ADD AX,9 ;R+9
MOV BX,X ;X送到BX中
ADD BX,6 ;X+6
ADD AX,BX ;(R+9)+(X+6),結果儲存在AX中
MOV BX,W ; W送到BX中
SUB BX,AX ; W-(R+9)-(X+6),連續減去兩個數,相當于減去這兩個數的和~~
MOV Z,BX ;最終結果送到Z中
(3)
MOV AX,W ;把W送到AX
IMUL X ;W*X 注意:低十六位儲存在AX裡,高十六位儲存在DX裡
MOV BX,Y ;把Y送到BX 裡
ADD BX,6 ;Y+6
IDIV BX ;(W*X)/(Y+6) 注意:商儲存在AX裡,餘數儲存在DX裡
MOV Z,AX ;把商送到Z中,
MOV R,DX ;把餘數 送到R中
(4)
MOV AX,W ;把W送到AX中
SUB AX,X ;W-X
CWD ;把AX中的十六位帶符号數擴充成為32位,低十六位儲存在AX中,高十六位保
;在DX中
MOV BX,5 ;把5送到BX中
IDIV BX ;(W-X)/5 被除數為32位,除數為16位 商為16位
IMUL Y ;上一步結果再乖以Y,積為32位
MOV BX,2 ;把2送到BX中
IMUL BX ;上一步乘法所得的積再乘以2,各為64位
MOV Z,EAX ;把結果中低32位放入Z雙字單元中
MOV [Z+4],EDX ;把結果中高32位放入Z+4雙字單元中
18。
指令 本條指令執行完後AX的内容 執行完後CF,SF,ZF的值
MOV AX,1234H 1234H 0 0 0
MOV CL,4 1234H 0 0 0
ROL AX,CL 2341H 1 0 0
DEC AX rrrrrr 2340H 1 0 0
MOV CX,4 2340H 1 0 0
MUL CX 8918H 0 0 0
INT 20H
程式結束後,(AX)=8918H (DX)=0000H
19。
指令 執行完後AX的内容 執行完後CF ,SF,ZF和OF的值
MOV AX,0 0 0010
DEC AX FFFFH 0100
ADD AX,7FFFH 7FFEH 0000
ADD AX,2 8000H 0101
NOT AX 7FFFH 0101
SUB AX,0FFFFH 8000H 1101
ADD AX,8000H 0000H 1011
SUB AX,1 FFFFH 1101
AND AX,58D1H 58D1H 0000
SAL AX,1 B1A2H 0101
SAR AX,1 D8D1H 0100
NEG AX 272FH 1000
ROR AX,1 9397H 1001
更多
http://cyhjd.blog.hexun.com/