图解在8086模拟器中运行汇编helloworld程序

汇编helloworld代码:

org 100h

; set video mode    
mov ax, 3     ; text mode 80x25, 16 colors, 8 pages (ah=0, al=3)
int 10h       ; do it!

; cancel blinking and enable all 16 colors:
mov ax, 1003h
mov bx, 0
int 10h
     
; set segment register:
mov     ax, 0b800h
mov     ds, ax

; print "hello world"
; first byte is ascii code, second byte is color code.

mov [02h], 'H'    
mov [04h], 'e'   
mov [06h], 'l'  
mov [08h], 'l'  
mov [0ah], 'o'  
mov [0ch], ','  
mov [0eh], 'W'    
mov [10h], 'o'   
mov [12h], 'r'   
mov [14h], 'l'   
mov [16h], 'd'    
mov [18h], '!'      

; wait for any key press:
mov ah, 0
int 16h

ret


启动仿真;程序起始地址是0700:0100;



设置显示模式;

AH=00H
AH=00/INT 10H 是用来设定显示模式的服务程序,AL 寄存器表示欲设定的模式:

AL 文字/图形 分辨率 颜色
00 文字 40*252
01 文字 40*2516
02 文字 80*252
03 文字 80*2516
04 图形 320*2002
05 图形 320*2004
06 图形 640*2002


此处设置为文字、80*25、16色;

看下图;执行int 10h指令时跳到int 10h的中断服务程序处,F4190、F4191;执行完后返回;



看上图,同时栈会发生变化;因为;

CPU执行int n指令,相当于引发一个n号中断的中断过程,执行过程如下:

1)取中断类型码n;

2)标志寄存器入栈,IF=0,TF=0;

3)CS、IP入栈

4)(IP)=(n*4),(CS)=(n*4+2)

从此处转去执行n号中断的中断处理程序。

    有标志寄存器,cs,ip的入栈动作;


cancel blinking and enable all 16 colors;


设置数据段为b800h;



把048h放入b.[00002h],此处是直接写显存;然后H显示出来;


显存
从 0B800H:0000H 开始,就是显示器的存储空间,这就是显存。
在 DOS 流行的时候,屏幕的显示,基本上都是文本模式。
在文本模式下,屏幕上共有 25 行、80 列,可显示 2000 个字符。
当对 0B800H:0000H 开始的内存空间写入数据的时候,字符将立即在屏幕上显示出来,这就是直接写屏。
要在屏幕上显示一个字符,需要连续写入两个字节,第一字节就是字符的 ASCII 码,第二字节是显示属性字节。
那么,要想写入一满屏的字符,就需要连续写入 4000 字节。这个数字就是“显存”的大小。



后面的类同;




显示完毕;

显存似乎没有仿真出来;看不到显存中的内容;


int 16h,键盘中断;

功能号:00H和10H
功能:从键盘读入字符 
入口参数:AH
          =00H—读键盘 
          =10H—读扩展键盘,可根据0000:0496H单元的内容判断:
            扩展键盘是否有效 


等待输入字符,然后结束程序;


  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: IntelliJ IDEA是一款非常流行的Java IDE,它提供了非常便捷的方式来创建Spring Boot项目和进行开发。下面我们就来看一下如何使用IntelliJ IDEA来创建一个Spring Boot的Hello World项目。 第一步:新建项目 首先进入IntelliJ IDEA,选择New Project,然后选择Spring Initializr来创建项目。 第二步:项目配置 在项目配置页面,我们可以选择项目的名称、选择Spring Boot的版本、选择Java版本、勾选项目的依赖等。对于Hello World项目,我们只需要勾选Web即可。 第三步:生成项目 选择完成后,IntelliJ IDEA会自动生成一个基于Spring Boot的Hello World项目,包括一些必要的文件和依赖。 第四步:编写代码 在生成的Spring Boot项目,我们可以找到一个名为application.properties的文件,用于配置项目的一些属性,例如端口号等。 我们可以在src/main/java文件夹下新建一个类,并在类编写我们的Hello World代码,如下所示: @RestController public class HelloWorldController { @GetMapping("/hello") public String sayHello() { return "Hello World!"; } } 这个代码就是定义一个RestController,请求路径为/hello,返回“Hello World!”字符串。 第五步:运行项目 在完成了上述代码编写后,我们可以运行这个Spring Boot项目,进入到主页面,找到我们编写的RequestMapping路径/hello,点击即可看到Hello World!。 至此,我们就成功的使用了IntelliJ IDEA来创建和开发一个Spring Boot的Hello World项目。 ### 回答2: IntelliJ IDEA是目前极受欢迎的Java IDE之一,可以方便地创建Spring Boot的Hello World项目。下面将通过图解的方式来详细介绍具体的操作。 第一步:打开IntelliJ IDEA IDE,选择File->New->Project,如下图所示。 第二步:选择Spring Initializr,点击Next按钮,如下图所示。 第三步:填写项目的基本信息,选择项目所在的文件夹,并选择Spring Boot版本,点击Next按钮,如下图所示。 第四步:选择web和Thymeleaf模板引擎,点击Next按钮,如下图所示。 第五步:输入Hello World并点击Finish按钮创建项目,如下图所示。 第六步:在src/main/resources/templates目录下创建index.html文件,输入以下内容。 <!DOCTYPE html> <html lang="en" xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title>Hello World</title> </head> <body> <h1 th:text="'Hello, '+${name}+'!'"></h1> </body> </html> 第七步:在src/main/java/com/example/demo目录下创建HelloController类,输入以下内容。 package com.example.demo; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; @Controller public class HelloController { @GetMapping("/") public String hello(@RequestParam(name="name", required=false, defaultValue="World") String name, Model model) { model.addAttribute("name", name); return "index"; } } 第八步:点击右上角的运行按钮,打开浏览器输入http://localhost:8080/,可以看到Hello World页面,如下图所示。 通过以上步骤,我们成功地创建了一个Spring Boot的Hello World项目。这个项目使用了Thymeleaf模板引擎,通过控制器HelloController将参数name传递到index.html模板进行渲染。在开发过程IntelliJ IDEA可以提供智能提示和快捷键,方便开发人员高效开发。 ### 回答3: IntelliJ IDEA 是一款非常流行的 Java 集成开发环境 (IDE),可以方便地创建和管理 Java 项目。在 IntelliJ IDEA 使用 Spring Boot 来创建项目也非常简单,下面我们就来详细介绍如何在 IntelliJ IDEA 创建一个 Spring Boot 的 Hello World 项目。 步骤一:安装 IntelliJ IDEA 首先,需要下载安装 IntelliJ IDEA,可以从官网上下载安装程序。 步骤二:新建项目 1. 打开 IntelliJ IDEA,点击 "Create New Project"。 2. 在打开的 "New Project" 窗口,选择 "Spring Initializr",然后点击 "Next"。 3. 在 "Project SDK" ,选择 Java SDK 版本(如果未安装,请先安装)。 4. 在 "Spring Initializr" 窗口,选择 "Web" 和 "Thymeleaf" 依赖项,点击 "Next"。 5. 在 "Project Name" 输入 "hello-world",然后点击 "Finish"。 6. IntelliJ IDEA 将会生成 Spring Boot 项目的初始结构,其包括 pom.xml 文件、src/main/java 目录,以及一个测试文件。 步骤三:编写代码 1. 打开 src/main/java/helloworld/HelloWorldController.java 文件,在类的头部添加注释 @RestController,标记这是一个 RESTful Web 服务。 2. 在类添加 @GetMapping("/") 注解,表示这是一个 GET 请求。 3. 在方法添加 @ResponseBody 注解,表示将方法返回值转换为 HTTP 响应的正文。 4. 在方法返回 "Hello, World!"。 代码如下: ```java @RestController public class HelloWorldController { @GetMapping("/") @ResponseBody public String helloWorld() { return "Hello, World!"; } } ``` 步骤四:运行项目 1. 在 IntelliJ IDEA ,右键单击 HelloWorldApplication 类,然后选择 "Run HelloWorldApplication"。 2. 在浏览器输入 http://localhost:8080/,即可看到 "Hello, World!" 的字样。 这就完成了在 IntelliJ IDEA 创建 Spring Boot 的 Hello World 项目的所有步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值