微机原理与应用第四章课件.pptVIP

  • 3
  • 0
  • 约4.74千字
  • 约 57页
  • 2017-08-12 发布于河南
  • 举报
微机原理与应用第四章课件

Nanjing University of Science Technology;第3章 汇编语言程序设计;汇 编 语 言;STACK SEGMENT DB 100 DUP( ? ) STACK ENDS DATA SEGMENT SUR DB ? DIS DB ? SQTAB DB 0,1,4,9,16,25,36,49,64,81 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK BEGIN: PUSH DS MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AX LEA BX,SQTAB;取平方表基地址 MOV AH,0 MOV AL,SUR ;AL=X ADD BX,AX ;计算地址偏移 MOV AL,[BX] ;取出X的平方值 MOV DIS,AL CODE ENDS END BEGIN;汇编语言的语句格式 ;汇编语言的基本元素 ;常量、变量和标号 ;常量、变量和标号 ;数据定义伪操作指令 ;数据定义伪操作指令 ;数据定义伪操作指令 ;变量的属性 ;标号的属性 ;汇编语言的运算符 ;汇编语言的运算符;汇编语言的运算符;汇编语言的运算符;汇编语言的段定义 ;汇编语言的段定义 ;汇编语言的过程定义 ;设定段寄存器伪指令ASSUME ;汇编语言源程序结构;标准程序前奏;标准程序前奏;结束用户程序返回DOS的方法 ;ORG伪指令 ;汇编结束伪指令语句END ;汇编语言源程序结构;例题详解 ;执行以下程序段后,AX的内容为: ORG 0000H TABLE DW 12H,34H,56H,$+1018,78H,90H COUNT EQU 3 LEA BX,TABLE MOV DX,4[BX] MOV AX,[BX+2*COUNT] SUB AX,DX;执行以下程序段后,CL和AX的内容各为: STR1 DW ‘AB’ STR2 DB 16 DUP(?) CNT EQU $-STR1 MOV CX,CNT MOV AX,STR1 HLT;求下列数据段中每个符号或变量所对应的值: DATA SEGMENT ORG 1000H MAX EQU 0FFH ONE EQU MAX MOD 10 TWO EQU ONE*4 SIZE EQU((TWO LT 20H) AND 10H)+10H BUF DB SIZE*2 DUP(?) COUNT EQU $-BUF DATA ENDS;汇编程序设计 ;顺序结构程序设计;DATA SEGMENT SUR DB 2 DIS DB ? SQTAB DB 0,1,4,9,16,25,36,49,64,81 DATA ENDS;CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK BEGIN PROC FAR PUSH DS XOR AX, AX PUSH AX MOV AX,DATA MOV DS,AX LEA BX,SQTAB ; 取平方表基地址 MOV AH,0 MOV AL,SUR ; AL=X ADD BX,AX ; 计算地址偏移 MOV AL,[BX] ; 取出X的平方值 MOV DIS,AL RET BEGIN ENDP CODE ENDS END BEGIN;为使程序精练,可采用查表指令XLAT,代码段如下: BEGIN: PUSH DS MOV AX,0 PUSH AX MOV AX,DATA MOV DS,AX LEA BX,SQTAB MOV AL,SUR ;AL=X XLAT SQTAB MOV DIS,AL;分支结构程序设计 ;分支结构程序设计实例 ;根据

文档评论(0)

1亿VIP精品文档

相关文档