汇编实验五
第一题
运行截图如下

答案如下

第二题
运行截图如下

答案如下

第三题
运行截图如下

答案如下

第四题
第一二两题中的代码不能运行,出现如下情况


但第三题可以正常执行,没有区别
第五题
assume cs:code
a segment
  db 1,2,3,4,5,6,7,8
a ends
b segment
  db 1,2,3,4,5,6,7,8
b ends
c1 segment   ; 在集成软件环境中,请将此处的段名称由c→改为c1或其它名称
  db 8 dup(0)
c1 ends	    ; 改的时候要成对一起修改
code segment
start:
       ;?
       mov ax,a
       mov ds,ax
       mov ax,b
       mov ss,ax
       mov ax,c1
       mov es,ax
       
       mov bx,0
       mov cx,8
	s:	mov ax,ds:[bx]
		add ax,ss:[bx]
		mov es:[bx],ax
		
		add bx,1
		
		loop s
		
		mov ax,4c00h
		int 21h
       
code ends
end start
相加前的c:

相加后的c:

第六题
额,这个栈逆序容我再研究研究,masm编译有错,先贴个半成品,把思路摆出来

最后是注意点
dosbox里面用masm和link的时候,都可以像 “ masm t1; ” 这样把文件后缀名省掉,不过在debug的时候,像 “ debug t1 ” 就会出错(如下图,提示什么“ extend error 2 ”),必须把“ .exe ”的后缀名带上才行

 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号