. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->寄存器(内存访问)
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  帮忙看下我的代码 哪为啥错误  还有3章实验那  [待解决] 回复[ 6次 ]   点击[ 303次 ]  
nadax
[帖 主]   [ 发表时间:2011-03-29 22:45 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-03-29 22:42
mov ax,1000
mov ss,ax
mov sp,2    这一步执行 DEBUG直接退出为什么
mov ax,2266
push ax


实验
Mov ax,ffff 

Mov ds,ax 
;段地址=ffffh 

Mov ax,2000 ; 

Mov ss,ax 
; SS(栈的基础地址):2000h 

Mov sp,0100 ;初始化栈顶;SS:SP=2000h:0100;从0101内存存储单元处开始写入数据 

Mov ax,[0] ; 为什么这AX是2200H  DS不是FFFF吗【0】不就是FFFF:0的内容吗?
csafei
[第1楼]   [ 回复时间:2011-06-13 14:32 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-06-06 17:11
是ffff:0的内容啊,这个值应该不是固定的吧?每台机器的值不一样 吧?
canxue9084
[第2楼]   [ 回复时间:2011-06-20 12:31 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-06-20 12:17
mov sp,2貌似语法错误
rotapple
[第3楼]   [ 回复时间:2011-06-20 14:50 ]   [引用]   [回复]   [ top ] 
荣誉值:10
信誉值:6
注册日期:2011-06-01 16:20
因为太小啦。 请以16为单位。
mov sp,10h
rotapple
[第4楼]   [ 回复时间:2011-06-20 14:51 ]   [引用]   [回复]   [ top ] 
荣誉值:10
信誉值:6
注册日期:2011-06-01 16:20
以后你学到中断那一章会有讲的。 在纯DOS下不会出错。
rotapple
[第5楼]   [ 回复时间:2011-06-20 14:57 ]   [引用]   [回复]   [ top ] 
荣誉值:10
信誉值:6
注册日期:2011-06-01 16:20
还有后面那个问题。
为什么不能是2200呢? ffff:[0]的数据又不是固定的。每台机器都不一样。
不知道你认为该是什么值。我机器上是5bea
lhk3355
[第6楼]   [ 回复时间:2011-07-30 00:05 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-11-17 23:03
Mov sp,0100 ;初始化栈顶;SS:SP=2000h:0100;从0101内存存储单元处开始写入数据  这个是不对的 写入数据 入 sp=sp-2  是倒着写的
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved