• 学习DOS下批处理容易出错的问题


    由于学习汇编的需要,折腾了一下DOS操作系统,然后就是选择MASM版本,总想着尽量选择高一点的版本来学习(可能是强迫症吧)。微软的MASM编译器在6.11版本后就不支持DOS16位系统了,6.15只能在32位DOS下运行。

    然后即使汇编编辑器,Edit或MASM自带的编辑器好像都大同小异。在Vim官网上发现有Dos版本,但官网说DOS16位的,Vim支持的最高版本是7.1。安装后可正常使用,确实比Edit要好很多,但遗憾的是没有语法加亮。

    经搜索,在CSDN上(windows10中最强大王爽汇编语言学习环境)有现成的配置好的Vim-Dos版,该博主确实费了不少心,但使用的Dos版本是7.1。我把该版本的所有文件复制到Dos6.22中,发现除了有错误提示,而且语法加亮也没有了,经过研究,发现Dos7和Dos6在批处理和文件处理上略有差别和Dos批处理下容易出错的知识点,记录如下:

    1、7开始支持长文件名,虽然通过Dir命令显示的是短文件名。因为Vim有些配置文件使用的是长文件名,导致运行问题。

    2、6不支持引号(单双引号)的字符串,包括路径参数、文件名称等,7却可以。如mkdir "dirName" 在7可以运行,在6中会有错误。

    3、批处理中特殊符号的转移字符是^。

    4、批处理中用于比较运算的符号是:equ、neq、lss、leq、gtr、geq和/i(忽略大小写),与大多数脚本语法不一致。

    5、()可用来定义复合语句,如if()else(),如不用复合语句,执行逻辑会有问题。

    6、分号;的作用是分割多个目标,如dir c:&dir d:可以写成dir c:;d:。

    7、goto和call都可以在程序内进行跳转(call还可以调用子程序文件),但call执行完毕后还要返回调用处继续执行,并且可以带调用参数。

  • 相关阅读:
    MongoDB学习笔记(一) MongoDB介绍及安装
    MVC DefaultControllerFactory代码分析
    WCF中的变更处理
    分布式文档存储数据库 MongoDB
    wcf学习资料
    vs2010打包安装
    Android语音识别RecognizerIntent
    Eclipse快捷键
    甲骨文公司老板埃里森在耶如大学的…
    Android TTS语音识别
  • 原文地址:https://www.cnblogs.com/meizhouxiang/p/14648456.html
Copyright © 2020-2023  润新知