中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-15 03:39
47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,268 会员排行
DOS批处理 & 脚本技术(批处理室) » [原创]计算字符串的字节数
可打印版本  4,506 / 15
第1楼 s11ss 发表于 2008-12-13 18:25
银牌会员 发帖 566 积分 2,098
[原创]计算字符串的字节数
第2楼 holucan 发表于 2008-12-13 22:17
初级用户 发帖 25 积分 26
请问这该如何使用呢?
第3楼 s11ss 发表于 2008-12-13 22:25
银牌会员 发帖 566 积分 2,098
命令行:
len.bat string
第4楼 holucan 发表于 2008-12-13 22:28
初级用户 发帖 25 积分 26
收到!谢谢解说;)
第5楼 yishanju 发表于 2008-12-14 16:31
银牌会员 发帖 1,357 积分 1,488
其实我更想关心,是怎么实现的,,,不抽空解说一下么
第6楼 s11ss 发表于 2008-12-14 17:31
银牌会员 发帖 566 积分 2,098
Originally posted by yishanju at 2008-12-14 04:31 PM:
其实我更想关心,是怎么实现的,,,不抽空解说一下么

取ds:80h处的值并返回;再用push和pop等改造成ASCode,即最后那行。

[ Last edited by s11ss on 2008-12-14 at 17:32 ]
第7楼 BC 发表于 2008-12-14 19:58
中级用户 发帖 175 积分 338
太牛了...

干涩难懂的汇编语言真有作为。
第8楼 chenall 发表于 2008-12-14 21:23
银牌会员 发帖 469 积分 1,276 来自 福建泉州
太牛了,用汇编,而且还有经典的纯字符
0hmrX-D@-r0P[h$pX-p#P]3/1/horX-D@-r0P[h?EX-r#P]3/1/h#rX-cA-@0P[1/3/UXtoum
这个把程序转成纯字符,是如何实现的?
第9楼 s11ss 发表于 2008-12-14 21:38
银牌会员 发帖 566 积分 2,098
Originally posted by chenall at 2008-12-14 09:23 PM:
太牛了,用汇编,而且还有经典的纯字符
0hmrX-D@-r0P3/1/horX-D@-r0P3/1/h#rX-cA-@0P

就是把反汇编代码改成等效的用push或pop等来指令组成的代码。上面说过了:)不知道到底有没有专门的转换程序……

[ Last edited by s11ss on 2008-12-14 at 21:39 ]
第10楼 skuny 发表于 2009-01-12 18:16
初级用户 发帖 20 积分 28
一个字 晕

看不懂哦!
第11楼 NeverAgain 发表于 2009-01-16 14:13
初级用户 发帖 40 积分 67
请教楼主:
参数的字节数和变量errorlevel,为什么有直接联系?
第12楼 s11ss 发表于 2009-01-16 14:21
银牌会员 发帖 566 积分 2,098
Originally posted by NeverAgain at 2009-1-16 02:13 PM:
请教楼主:
参数的字节数和变量errorlevel,为什么有直接联系?

lenb.com返回值是参数的字节数
第13楼 NeverAgain 发表于 2009-01-16 16:54
初级用户 发帖 40 积分 67
Originally posted by s11ss at 2009-1-16 02:21 PM:

lenb.com返回值是参数的字节数


楼主还是没有回答我的问题~~
第14楼 netbenton 发表于 2009-01-18 00:30
银牌会员 发帖 752 积分 1,916 来自 广西
我来一个纯批的
@echo off&setlocal enabledelayedexpansion
set "str=%*"&set n=0&set s=!str!
:loop
set /a n=!n!+16
set "m=!s!fedcba9876543210"
set "s=!str:~%n%!"
if not "!s!"=="" goto loop
set /a m=0x!m:~16,1!+!n!-15
echo "%str%" 有!m!个字节
pause

[ Last edited by netbenton on 2009-1-23 at 02:24 ]
第15楼 s11ss 发表于 2009-01-18 11:48
银牌会员 发帖 566 积分 2,098
Originally posted by netbenton at 2009-1-18 12:30 AM:
@echo off&setlocal enabledelayedexpansion
set "str=%*"&set n=0&set s=!str!
:loop
set /a n=!n!+16
set "m=!s!fedcba9876543210"
set "s=!str:~%n%!"
if no ...

兄弟,某些字符如汉字占两个字节

[ Last edited by s11ss on 2009-1-18 at 11:49 ]
1 2  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023