汇编语言课后题检测点3.1求教
1)在DEBUG中,用 "D 0:0 lf" 查看内存,结果如下:0000:0000 70 80 F0 30 EF 60 30 E2-00 80 80 12 66 20 22 600000:0010 62 26 E6 D6 CC 2E 3C 3B-AB BA 00 00 26 06 66 88下面的程序执行前,AX=0,BX=0,写出每条汇编指令执行完后相关寄存器中的值mov ax,1 mov ds,ax mov ax,ax= mov bx,bx= mov ax,bx ax= mov ax,ax= mov bx,bx= add ax,bx ax= add ax,ax= mov ax,0 ax= mov al,ax= mov bx,0 bx= mov bl,bx= add al,bl ax= 实在不解DS的值,如何定位DS 的值?求详解过程谢谢! DS的值 由 AX给出MOV AX,1 AX=0010AX 赋值
MOV DS,AX DS=AX 把AX的值赋给DS,DS=0010
主要是你好像还没弄清楚 mov 语句吧 ds是数据段地址 []这个括号中的是偏移地址 公式你懂吧 先看MOV AX ,1 然后MOV DS,AX意识就是AX中的1移到了DS中现在DS中的值为1 接着 MOV AX, 意识就是在数据段地址DS到中的偏移地址地址加法器 相加 就是00010这个地址中的数据移到AX中 本帖最后由 恍然一梦 于 2012-12-1 09:17 编辑
0000:0000 70 80 F0 30 EF 60 30 E2-00 80 80 12 66 20 22 600000:0010 62 26 E6 D6 CC 2E 3C 3B-AB BA 00 00 26 06 66 88下面的程序执行前,AX=0,BX=0,写出每条汇编指令执行完后相关寄存器中的值mov ax,1 mov ds,ax mov ax,ax= 2662 mov bx,bx= E626 mov ax,bx ax= E626mov ax,ax= 2662 mov bx,bx= D6E6add ax,bx ax= FD48 add ax,ax=2C14 mov ax,0 ax=0mov al,ax= 00E6 mov bx,0 bx= 0mov bl,bx= 0026 add al,bl ax= 000c ( 进位丢失) 看了你们的解答,我理解了,谢谢你们,以后我有不懂的就来问你们!!!!
页:
[1]