IBM8086汇编教程.ppt

  1. 1、本文档共255页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
IBM8086汇编教程

IBM-PC 汇编语言程序设计 什么是汇编语言? 机器特定的编程语言 该语言的语句和机器内在语言是一一对应的关系 该语言和机器的指令集、系统结构相匹配 程序设计的级别 机器语言 汇编语言 高级语言 IBM-PC 汇编语言 针对 8086, 8088, 80186, 80286, 80386, 80486, and Pentium Processors 什么是汇编器? 系统级别的程序 负责将汇编语言编写的源代码翻译成机器语言 一般由软件开发商提供,例如我们所使用的Microsoft 的MASM 6.11版本的编译器 源文件 目标文件 可执行文件 为什么要学习汇编语言? 能够学习到处理器是如何工作的 理解计算机的基本系统结构 探究数据和指令的内部表述 能够创建小巧有效的程序 允许程序员绕过高层语言的限制编程 有些工作必须用汇编语言完成 机器语言 数字表示的机器执行的指令集合,被称为处理器指令集 处理器能够执行的基本指令的集合 每个指令被编码成为数字符号 指令可能占用一个或者多个字节 每个数字代表一个机器指令 IBM-PC机器指令举例 1011000000000101b or B005h 操作码 = 含义:拷贝一个字节数据到AL寄存器中 字节数据由该指令的第二部分代表: 汇编语言 vs机器语言编程 机器语言编程 编写一系列的数字符号表示程序执行所需的指令和数据 汇编语言编程 采用符号指令表示,将翻译成机器语言程序和数据常量 第1部分 软硬件基础知识 1 数据表示 Assembly Language Programming 二进制数字 1101101b 数位从左到右依次排列 b6b5b4b3b2b1b0 下标表示位值(place value ) bi ? 2i 需要熟记各个位值 转换到十进制数的多项式 b6*26 + b5*25 +b4*24 +b3*23 +b2*22 +b1*21 + b0*20 In this case, 1101101b is 64+32+8+4+1 = 109d 十进制到二进制的转换 109d 转换到二进制-循环被2除 余数作为数位值 直到0为止 将余数组合起来 第一位余数作为二进制数的最低位 109d = 1101101b 109 / 2 = 54 r 1 54 / 2 = 27 r 0 27 / 2 = 13 r 1 13 / 2 = 6 r 1 6 / 2 = 3 r 0 3 / 2 = 1 r 1 1 / 2 = 0 r 1 十六进制数 0~9, A, B, C, D, E, F 注意: 数字以H结尾 大家思考: 为何引入十六进制数? 二进制和十六进制 Binary ? Hex 4位一组划分 (从最低位开始) 最后一组不足4位补0 每组对应的数据转换成对应的数字 Hex ? Binary 相反的方法每个数字展成4 bits 可以忽略前面的若干的0 二进制数据存储 存储数据的大小定义,通常 字节byte DB 字word DW 双字double word DD 四字quad word DQ 存储器中的每个字节都有唯一的地址 基本加法 Easy !! 例如: c c c c 10101 + 1111 100100 Hex Example: c c 3CF02 +435C9 804CB 基本减法 Hex example: b b FCF02 -435C9 B9939 b b b b b 1101000011 - 1101001 1011011010 字符数据ASCII American Standard Code for Information Interchange (ASCII) 7-bit 二进制码表示的128个字符 通常占用1字节 包括一些控制字符 ASCII码的序列称为ASCII字符串 注:数字字符‘1’~‘9’的ASCII码值:30~39 大家思考: 如何将ASCII码值和对应的数字相转换? 有符号数和无符号数 无符号数:所有位均为数据位 有符号数:最左边的位为符号位 例如:1111 1101 无符号数252,而有符号数为-7 理解 Two’s Complement Code 补码的定义: [X]补 = (M + X) mod M 其中:M= 2n 正数的编码?无符号正数表示 负数的编码?其值加上256后对应的正数编码 Code for +107 107d = 1101011b code:(6Bh) Code for -107 -107 + 256 = 149 149d = 10010

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档