+ -
当前位置:首页 → 问答吧 → 初学汇编 能不能帮我看看哪里错了。。。谢谢!!!!

初学汇编 能不能帮我看看哪里错了。。。谢谢!!!!

时间:2011-12-15

来源:互联网

题目是
设定字节型变量VAR1的内容为35H,编写程序将VAR1的高4位与低4位分离,分别作为低4位保存在RES1和RES2中,这两个变量高4位置0。

我的代码是
stack0 segment stack
  dw 40h dup(0)
stack0 ends

data segment
  var1 db 35H
  res1 db 
  res2 db 
   
data ends

code segment
  assume cs:code,ds:data,ss:stack0
   
main:
  mov BL,var1
  mov BH,var1
  and bl,00001111
  and bh,11110000
  mov res1,bl
  mov res2,bh
  mov ah,4ch
  int 21h
   
code ends
  end main



我看别人都用push ds什么的 我不太明白 有没有高人能给我讲讲。。。真心感谢了!!!

作者: fy_scu   发布时间: 2011-12-15

一个初学者搞这么晚容易吗。。来个大神救救我吧。。

作者: fy_scu   发布时间: 2011-12-15

我已经解决了!!哈哈!!
main:mov ax,data
  mov ds,ax
  mov BL,var1
  mov BH,var1
  shr bh,4
  and bl,00001111b
  and bh,00001111b
  mov res1,bl
  mov res2,bh
   
  mov ah,4ch
  int 21h

成就感啊,回帖送分。。。

作者: fy_scu   发布时间: 2011-12-15