. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->基础知识
主题 : :  请教一下!!  [已解决] 回复[ 6次 ]   点击[ 495次 ]  
thestone
[帖 主] [ 发表时间:2011-03-07 21:29 ] 
荣誉值:0
信誉值:0
注册日期:2011-03-05 17:09
下面哪个是错误的指令:
  1.mov ax,bx
  2.add al,0f5H
  3.mov al,bh
  4,add al,100H
  好象2和4是错误的但是训练题只能单选啊!!!
zaixuexi
[第2楼] [ 回复时间:2011-03-07 23:17 ] 
荣誉值:93
信誉值:0
注册日期:2010-11-29 14:28
2是对的.
字母前要加0
否则编译器分不清楚
add ah,ah         ;这句的操作数2是表示ah寄存器还是16进制数a,编译器分不清楚
add ah,0ah        ;这么写肯定是表示16进制的a了,所以约定字母(A~F)前加0

4是错的
al是8位的reg,100H = 1 0000 0000(二进制)  ;一看就知道超过8位了吧,是错的吧.
此问题已结贴!
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved