回 帖 发 新 帖 刷新版面

主题:[求助]新手请教1个关于汇编的初级问题

大家好,我是个初学者,想开始了解一下汇编,有个问题请教一下大家~

今天在一本入门级的书中看到这样一句话,意思是说“mov ax,3 中的3是一个16位的字”,我的理解是:3转换成机器语言就是16个0和1。但是我有点想不明白,“3”是一个字节,应该是8位啊?照我这样理解,运算启不是越来越慢了吗?呵呵,有点弱智的问题,但是我的确不太明白~

回复列表 (共3个回复)

沙发

ax决定了3是16位的
如果用al,3就是8位
eax-->32位

板凳

呵呵,总算明白一些了,我是这样理解的:

16位之所以比8位快,就是因为它有16位数据线,一次可以传送16个0或1,所以只要任一个十进制数(例如自然数35566)转成二进制后大于8位的,那么16位的优势便显示出来了。。但是16位又规定了一次必须传送16个0或1,所以不足16位的十进制数便在左边补零,同理,在键盘上某一个英文字母或功能键都规定了自己的二进制代码,我想应该是8位吧,所以当我们要在内存里存一个单词“word”的话,那么16位传2次,而8位却要传4次。。。

我这样理解正确吗?请教教我吧,谢谢了!

3 楼

2楼讲的很不错~~

我来回复

您尚未登录,请登录后再回复。点此登录或注册