当前位置: 代码迷 >> 汇编语言 >> 依据王爽汇编实验五第六题改的题目,求解答
  详细解决方案

依据王爽汇编实验五第六题改的题目,求解答

热度:8832   发布时间:2013-02-26 00:00:00.0
根据王爽汇编实验五第六题改的题目,求解答!
//用push指令将A段中的前8个字节数据,逆序存储到B段中,注意数据不是DW,而是DB
Assembly code
assume cs:codea segment  db 1,2,3,4,5,6,7,8,0ah,0bh,0ch,0dh,0eh,0fh,0ffha endsb segment  db 0,0,0,0,0,0,0,0b endscode segmentstart:mov ax,a      mov ds,ax      mov ax,b      mov ss,ax      mov sp,8      mov bx,0      mov cx,8    s:mov dl,ds:[bx]      push dl      inc bx      loop s      mov ax,4c00h      int 21hcode endsend start

//这是我自己写的代码,可是有错误,需要怎么改哦?

------解决方案--------------------------------------------------------
push和pop的数据类型应该是字。
程序如下:
assume cs:code,DS:A,SS:B
a segment

db 1,2,3,4,5,6,7,8,0ah,0bh,0ch,0dh,0eh,0fh,0ffh
CN EQU $

a ends

b segment

dw 0,0,0,0,0,0,0,0 ;16个字节,8个字节不够用

b ends

code segment

start:mov ax,a
mov ds,ax
mov ax,b
mov ss,ax
mov sp,16 堆栈深度为16字节
mov bx,0
mov cx,8
s:mov dx,WORD PTR ds:[bx]
XCHG DH,DL
push dx
inc bx
INC BX
loop s
mov ax,4c00h
int 21h
code ends
end start


  相关解决方案