中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-17 17:58
47,814 主题排行 / 349,907 发帖 / 今日 4 篇 / 48,259 会员排行
DOS疑难解答 & 问题讨论 (解答室) » 纯DOS下如何计算并键入汉字的内码以进入中文文件夹
可打印版本  2,523 / 16
第1楼 king603 发表于 2005-11-15 14:39
初级用户 发帖 10 积分 22
纯DOS下如何计算并键入汉字的内码以进入中文文件夹
请问,在纯DOS环境下,如何打开中文文件名的文件夹?(最好不用借助软件或建立批处理文件)

在纯DOS下,中文是不能显示的(显示得像乱码一样),我以前问过老师如何在纯DOS下进入“D:\操作系统”目录,他竟然将“操作系统”四个字 用笔算了出来了!结果是八组三位数(178、217、215、247、207、181、205、179),每两组数为一个字,在纯DOS下把“乱码”形式的“操作系统”四字打了出来(方法是按住“Alt”键再按小键盘的数字键再松开“Alt”键,一次为半个字,打了八次就打完了这四个字!)

我想问谁知道这八组数是怎样算出来的。


—————————————— willsort 版务记录 ——————————————
修改原标题:DOS问题请教。
原主题作者在通知发出三日后仍未申诉或修改,因此由版主修改并进行积分处罚
处罚包括:扣除因发表该主题而奖励的3点积分,扣除标题违规惩罚性1点积分
—————————————— willsort 版务记录 ——————————————


[ Last edited by willsort on 2005-11-30 at 13:27 ]
第2楼 dato 发表于 2005-11-15 16:15
高级用户 发帖 377 积分 916
真的哦,不知道用的是什么编码,最好算法简单点,真的很不错。

可惜上屏的仍然是乱码,只能在中文系统下显示
第3楼 willsort 发表于 2005-11-15 16:43
元老会员 发帖 1,512 积分 4,432
Re king603:

DOS下的中文系统一般使用 GB2312 字符集国标编码,使用 GBK 或者 CJK 等大字符集的汉字系统的极少。而在 GB 码中,汉字分为一级汉字和二级汉字,一级按拼音顺序排列,二级按照笔画和笔画数排列。虽然有一定规律,但是实际计算时,必须对编码表有较强的记忆,一般不建议采用。

而在 DOS 下不使用汉字系统进入中文名目录(或者说打开开中文文件名的文件夹)早已有了许多方案,提供给你一个链接

老病新药:非中文环境下进入中文目录
http://www.cn-dos.net/forum/viewthread.php?tid=16819

当然,现有的方案都还无法完全做到,从许多中文名中辨认出某个具体中文名并进入,比如随机给出一个环境,包含许多同等长度的中文名目录,但不告知是哪些中文名,而只要求进入一个名为“目标目录”的目录,这是很难实现的。

[ Last edited by willsort on 2005-11-30 at 13:29 ]
第4楼 JonePeng 发表于 2005-11-15 19:54
金牌会员 发帖 1,883 积分 4,562 来自 广东广州
Originally posted by king603 at 2005-11-15 14:39:
我想问谁知道这八组数是怎样算出来的。


可以通过查询ASCII字符表来取得那些“乱码”的字符值。DN(DOS Navigator)和QB/QBasic的帮助文件都有ASCII表。至于怎么把中文字符的每个ASCII码值算出来,可以编一个小程序将ASCII字符转换为数值。

如果不借助任何工具的话,那只能靠死记硬背那些字符的ASCII码值咯 -_-
第5楼 dato 发表于 2005-11-15 20:25
高级用户 发帖 377 积分 916
大家能举个换算例子吗

比如 系 这个字是怎么换的
第6楼 king603 发表于 2005-11-16 01:36
初级用户 发帖 10 积分 22
对呀,最好能举几个例,让我们大家可以学习学习!
第7楼 JonePeng 发表于 2005-11-16 21:42
金牌会员 发帖 1,883 积分 4,562 来自 广东广州
以QB为例:
a$ = "系"
PRINT ASC(LEFT$(a$, 1)); ASC(RIGHT$(a$, 1))
第8楼 king603 发表于 2005-11-16 23:13
初级用户 发帖 10 积分 22
如图:



这八组十进制数是不是有公式可以算出来的?
第9楼 JonePeng 发表于 2005-11-17 19:17
金牌会员 发帖 1,883 积分 4,562 来自 广东广州
每个字符是对应一个ASCII代码的,所以公式就是将ASCII字符转为代码。
第10楼 king603 发表于 2005-11-17 19:34
初级用户 发帖 10 积分 22
怎样转为代码?(步骤如何?)
请赐教...

谢!
第11楼 king603 发表于 2005-11-22 13:58
初级用户 发帖 10 积分 22
无人知晓?
第12楼 JonePeng 发表于 2005-11-22 19:53
金牌会员 发帖 1,883 积分 4,562 来自 广东广州
第13楼 king603 发表于 2005-11-22 21:09
初级用户 发帖 10 积分 22
好像有点关系哦!不过还是不太懂~~~~~~(我太笨~~?)

如:“操”=“178 217”中,若结果答案是“178 217”,那么,已知条件是不是除了“操”字外还有其它讯息作“已知条件”的?那些所谓隐含的“已知条件”又是什么呢?(我好像问得太深奥了~~~),还是,这个“178 217”这个结果答案只能用电脑算而根本不可能以人手算了来的?
第14楼 plz45 发表于 2005-11-23 14:19
初级用户 发帖 8 积分 24
晕,标题超长,白打了。
第15楼 plz45 发表于 2005-11-23 14:24
初级用户 发帖 8 积分 24
http://www.philosophyol.com/bbs/TopicOther.asp?t=5&BoardID=27&id=3394
请看上面的区位表,国家给每个汉字都规定了一个区位码:共2个数字,前为区,后为位(废话?)。你要算出想要的数字的话,先到表里找到一个字,比如“藏”,为18区,56位,再分别加上160,得到178,216就可以了,这其实是汉字的机内码。
1 2  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023