. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->基础知识
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  汇编代码解释?麻烦帮我解释一下代码原意  [待解决] 回复[ 5次 ]   点击[ 700次 ]  
378350770
[帖 主]   [ 发表时间:2010-02-27 22:52 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-02-23 22:46
mov ax,62627  AX= 62627 F4A3   
mov ah,31H    AX= 31A3   
mov al,23H    AX= 3123   
add ax,ax     Ax= 6246   
mov bx,826CH  BX= 826C   
mov cx,ax     CX= 6246   
mov ax,bx     AX= 826C   
add ax,bx     AX= 04D8   
mov al,bh     AX= 0482   
mov ah,bl     AX= 6C82   
add ah,ah     AX= D882   
add al,6      AX= D888   
add al,al     AX= D810   
mov ax,cx     AX= 6246
versaariel
[第1楼]   [ 回复时间:2010-02-28 08:15 ]   [引用]   [回复]   [ top ] 
荣誉值:62
信誉值:0
注册日期:2009-12-03 13:14
没有原意,就是熟悉指令的用法,上DEBUG实验下吧
cwandqd
[第2楼]   [ 回复时间:2010-03-11 10:19 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2008-08-02 13:24
MOV AX,62627                          AX=F4A3H  向寄存器ax存入十进制数62627 转换成十六进制数为

MOV AH,31H                              AX=31A3H  8位寄存器操作指令,将数据31h加到AH(高8位)寄存器中

MOV AL,23H                              AX=3123H  8位指令 将数据23H 加入到 AL中。(低8位)

ADD AX,AX                               AX=6246H   将寄存器ax中的数值累加

MOV BX,826CH                        BX=826CH  将826CH移动寄存器bx中

MOV CX,AX                              CX=6246H   将寄存器ax中的数值转到寄存器cx

MOV AX,BX                              AX=826CH  将BX转移到AX中

ADD AX,BX                              AX=04D8H  将BX与AX累加结果保存在AX中

MOV AL,BH                              AX= 0482H   将寄存器BH(高8位)转移到AL(低8位)中    

MOV AH,BL                               AX=6C82H  将寄存器BL BX中的低8位,转到AX 的高8位中

ADD AH,AH                               AX= D882H  将AX中的高8位累加

ADD AL,6                                   AX=D888H   将AL加6

ADD AL,AL                                 AX=D810H   将AX的低8位累加

MOV AX,CX                                AX= 6246H   将16位寄存器CX与AX相加,结果存于AX中
astrol
[第3楼]   [ 回复时间:2010-05-11 18:16 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-04-25 17:19
MOV AX,CX                                AX= 6246H   将16位寄存器CX与AX相加,结果存于AX中

上楼的这个解释错了   应为   讲16位寄存器CX中的值赋给AX(覆盖AX中原有的值)
likelike
[第4楼]   [ 回复时间:2010-11-11 16:13 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-11-09 16:36
楼上,说的正确。MOV指令是将后面的寄存器的内容赋给前面寄存器
goodxiaowan
[第5楼]   [ 回复时间:2010-12-11 08:54 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-05-23 12:24
要注意一点:上面提到“转移“表示:把一空间里的数据存到另一空间,但原空间里的数据依然存在!
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved