王爽 《汇编语言》 第4章 第一个程序 学习笔记

目录

一、汇编程序从写出到执行的过程

二、源程序

三、语法错误和逻辑错误

四、连接的作用

五、程序执行过程的跟踪

六、程序被装入内存的什么地方?


一、汇编程序从写出到执行的过程

过程:

编程(edit) --->1.asm ---> 编译--->1.obj --->连接 --->1.exe ---> 加载 --->内存中的程序 --->运行

语法:masm 1.asm;

           link 1.obj;

           1.exe (运行)

二、源程序

assume cs:codesg  ;codesg为段名,此句将该段和cs联系起来

codesg segment    ;段的开始

    mov ax,0123h
    mov bx,0456h
    add ax,bx
    add ax,ax

    mov ax,4c00h
    int 21h        ;这两句是程序返回

codesg ends       ;段的结束
  
end               ;程序结束

其中

codesg segment 和codesg ends 之间为汇编指令,由CPU执行

其他为伪指令,由编译器执行。

三、语法错误和逻辑错误

语法错误:程序在编译过程时被编译器发现的错误

逻辑错误:源程序编译后,运行时发生的错误

四、连接的作用

(1)源程序很大时,可将它分为多个源程序文件来编译,再连接

(2)程序中调用了某个库文件中的子程序,需将库文件与该程序生成的目标文件连接到一起

(3)编译后得到的目标文件中有些内容还不能用来生成可执行文件,连接程序将这些内容处理为最终的可执行信息

五、程序执行过程的跟踪

command:设置CS:IP指向程序的入口,就放弃了对CPU的控制权

debug:由command加载运行,后debug加载程序,不放弃对CPU的控制

六、程序被装入内存的什么地方?

程序所在内存区的地址为ds:0

内存区的前256个字节存放的是PSP(程序段前缀),dos用来和程序进行通信。从256个字节以后的空间存放的是程序。

所以,程序的物理地址为:

SA+10H:0

或(SA*16+0+256)

你可能感兴趣的:(王爽《汇编语言》笔记,学习,笔记,汇编)