汇编的学习历程 -第一个程序

一: 部分寄存器作用


CS:IP


任意时刻cpu将CS:IP指向的内容当做指令执行


DS


存放要访问数据的段地址


SS:SP


任意时刻,SS:SP指向栈顶元素

二:第一个程序

1:使用dos的edit编辑,现在看界面果然烂

2:源程序分为两部分

伪指令:由编译器所执行的指令

Ps:xxx segment

.....

xxx ends//成对使用的指令,定义了一段

end//汇编程序结束的标记

asume//假设某一段寄存器和程序的某一个用segment.....ends定义的段相关李娜

汇编指令:有对应的机械码的指令,可以被编译为指令,最终为cpu为执行

3:标号代表了一个地址,类似codesg,最终会在编译和连接中处理成一个段地址

4:程序的返回:command将程序载入内存,再将CPU交个程序,程序运行完后,将权利返回command

语法:mov ax,4c00h

Int 21h(别问我为啥,不知道啦)

二:编译,连接,调试

工具:masm,link,debug

用法:

假设:已经有源程序文件 c:\t1.asm

1:  输入:masm c:\t1;

在当前路径下生成1t.obj,跳过生成的.lst,.crf,两个文件

2:输入:link t1;//不同代码可能还得连接其他文件

在当前路径生成 1.exe,忽略中间文件.map,.lib 的生成

3:输入:debug t1.exe

注意路径,进入debug的程序之中,基本操作没有变,使用u可以查看所有的程序,t运行一个单句,运行到int 21时,使用p

时间: 2024-12-28 22:44:57

汇编的学习历程 -第一个程序的相关文章

Duilib学习二 第一个程序 Hello World

Duilib学习二  第一个程序 Hello World #pragma once #include <UIlib.h> using namespace DuiLib; #ifdef _DEBUG # ifdef _UNICODE # pragma comment(lib, "DuiLib_ud.lib") # else # pragma comment(lib, "DuiLib_d.lib") # endif #else # ifdef _UNICOD

Hibernate学习笔记:第一个程序的搭建

Hibernate学习笔记:第一个程序的搭建 前一段时间对Struts2这个框架有了一点点地了解,很高兴,自己开始学习Hibernate这个框架了.本篇博文将记录下第一个Hibernate程序的搭建过程.其实有时候个人觉得无论我们学习什么语言也好,还是学习什么框架也好,第一个HelloWorld程序真的相当重要,假如 我们在学习第一个HelloWorld程序都跑不出来,这完全影响着我们对新接触的东西的兴趣和动力,但是,往往第一个程序都会涉及到很多的配置,因此使得对于初学者要摸索一定的时间,对于我

java学习 之 第一个程序及认识

以前也看过一系列的java方面的程序,但是还没有正式敲过,今天正式学习并且正式敲出代码.在这里记录下来今日所得 写作工具:Notepad++ 在写作工具方面好多人建议用 记事本,但是我还是认为用 Notepad++ 这个编辑工具比较好. 这个相较于记事本来说,关键字可以编写,能够提高学习中的拼写错误提交效果: 再者,写好以后也要手动执行命令,更能够知道程序是怎么运行的. 第一个程序 public class HelloWorld { public static void main(String

Nginx学习之一-第一个程序Hello World

本例子实现了一个简单的hello world程序.运行效果: 虚拟机Ubuntu中: win7中chrome浏览器: 一.config文件编写 Nginx提供了一种简单的方式将第三方的模块编译到Nginx中.首先把源代码文件全部放到一个目录下,同时在该目录中编写一个文件用于通知Nginx如何编译本模块,这个文件名必须为config. 然后,在configure脚本执行时加入参数--add-module=PATH(新模块源代码以及config文件存放目录),就可以在执行政策编译安装流程时完成Ngi

Eclipse的学习历程——第一天

第一个java程序!

Spark学习之第一个程序打包、提交任务到集群

1.免秘钥登录配置: ssh-keygen cd .ssh touch authorized_keys cat id_rsa.pub > authorized_keys chmod 600 authorized_keys 2.环境工具 2.1环境 系统 urbuntu jdk 1.7.0_79 scala 2.10.4 hadoop 2.6.0 spark 1.6.2 2.2打包工具 IDEA + sbt1.2打包工具 3.打包 3.1安装插件 需要预先安装scala插件,点击File ->S

C语言学习之第一个程序

1 #include<stdio.h> 2 3 int main() 4 { 5 printf("This is my first program!\n"); 6 7 return 0; 8 } 基本格式大致如下: 1 #include<stdio.h> 2 3 int main() 4 { 5 printf(" "); 6 7 return 0; 8 } 而printf里面地内容原封不动地输出,而\n部分是换一行输出地意思!

Python的学习之旅———第一个程序

基本上学习语言第一个程序都是打印"hello world".Python实现这个操作,就跟说话一样. print('hello world') 我们可以直接进入解释器的交互模式,有点事调试方便,但是永久保存代码,还可以用脚本文件的方式,有点是可以保存代码.通常定义文本以.py作为结尾. 也可以去安装JetBrains PyCharm 2017 IDE (集成开发环境IDE,Integrated Development Environment ),用他来编写调试更爽.可以极大的提高开发效

从零开始学习PYTHON3讲义(三)写第一个程序

<从零开始PYTHON3>第三讲 本页面使用了公式插件,因博客主机过滤无法显示的表示抱歉,并建议至个人主页查看原文. ? 我见过很多初学者,提到编程都有一种恐惧感,起源是感觉编程太难了.其实,难的也不过是开头第一步,所以中国有古话说,万事开头难. ? 一个人想得到别人的帮助,通常是同别人沟通,请求对方伸出援手.沟通的工具当然是语言,甚至可能还要加上晓之以理.动之以情的表情.手势.比较而言,请计算机帮忙就简单多了,只需要语言就够了. ? 人类沟通的语言,需要两个人都能听懂,比如碰到一个不会中文的