有毒有害物质的种类:请教汇编语言ASCII

来源:百度文库 编辑:中科新闻网 时间:2024/04/28 22:38:26
我想问一下
ASCII码 属于压缩的BCD码 还是属于非压缩的BCD码?
这个BCD码把我搞晕了
非压缩的BCD码的调整指令AAA AAS AAM AAD
不就是ASCII的调整指令吗?? 调整之后是OXOXH这样一种形式的 ASCII是10进制的 怎么看都不象ASCII
请高手指点指点!
汗 MSN 没用过 普通的电子邮箱没啊?哭 你真不是常人啊

不一样的
一般现在你们所学的计算机教材针对ASCII都是以16进制表示,而且常拿1~9的数来做例子,也就是16进制的30H~39H,它的调整不需要什么指令 减去30H 就是所对应的10进制ASCII(注意16进制0~9和10进制一样);
而你所说的DAA还有什么AAA是十进制调整指令里的,前一个是压缩的BCD码,后一个非压缩的,调整后我们主观上说它是压缩的和非压缩的,但你非要把它说成是16进制的,我也不会说你错,主要看你怎么认为了;
比如08H,我说它是AAA指令调整后的单字节的非压缩BCD码,你也可以说它是16进制的08H,也可以说是10进制的8D,都无所谓的饿,关键是看你自己怎么认为!
看了上面的应该就明白了吧!
还有什么不明白的地方留言,我会即时回复你的。

太专业了,不会 呵呵

哈哈,不要晕啊,我是楼上的,我的问题补充已达到上限了,不能再补充,只好用马甲。
我没装 Windows,Linux 下的 QQ 功能一般,我就没装。无论如何,谢谢,:)
去C语言吧找我吧,如果你用 MSN, 我再给你我的 MSN。
-------------------------
去 debian 吧(http://post.baidu.com/f?kw=debian)开个帖子吧,我把 email 给你,这里说不方便。

编码就是编码,进了计算机都是2进制,谁认识谁啊~~

ASCII (American Standard Code for Information Interchange美国信息互换标准代码)只是一种为西方语言所用到的字母和常用的符号(如 + - ? = ")编号的标准。和 BCD码没关。

造成你混乱的是由于数据储存都是以字节为基本单位,ASCII 编码和非压缩 BCD 码也不例外。用两者编码的数据,存放在电脑中(无论是在寄存器、存储器、还是什么别的地方),看起来都是类似的,关键是看你把它当什么来用。比如现在寄存器 AL 的值为 39H (二进制就是 0011 1001),如果你把它当作 ASCII 代码来看,它表示的是 '9' 这个数字。把它当作非压缩的BCD码,是一个非法(无效的)BCD码,当作压缩的BCD码呢,就相当于 39。当作普通变量来用,那就是使用这个十六进制数的十进制值,等于 57。

先把概念分清楚了,具体的指令就好理解了。
-------------------
还有就是你如何知道39H是ASCII的9呢?
ASCII 也是10进制的,这话对吗??
------------------------------
你从 ASCII 编号表就可以查出 39H 代表 '9'
一个数,不管你是用十进制、十六进制还是二十八进制表示,它的值都是一样的。
ASCII 编码是把可能用到的符号编上了一个唯一的编号,你可以用任何进制来表示这个值,如上例,ASCII 57 = ASCII 39H = '9'
这里就有一个 ASCII 编码的表,可以去看看,http://zh.wikipedia.org/wiki/Ascii
------------------------------
其实使用 AAA 等指令,只是指示了 CPU 对操作数作相应的转化,至于你给它的输入数在逻辑上是不是代表一个 BCD码的数,它根本不会管的。

------------------------------
这里确实不好聊,可惜我没有 QQ 的。我经常去
百度帖吧的C语言吧(http://post.baidu.com/f?kw=c%D3%EF%D1%D4)。可以在那里找到我,记得用上这个 ID。
PS:呵呵,真的没有 QQ,从来都没有。

我也是搞编程的,可惜我还没有学到那一步,再过几年吧,等我学了再说。