首页 范文大全 古典文学 职场知识 中国文学 公文书信 外国名著 寓言童话 百家讲坛 散文/诗歌 美文欣赏 礼仪知识 民俗风情
  • 工作总结
  • 工作计划
  • 心得体会
  • 竞聘演讲
  • 会议发言
  • 爱国演讲
  • 就职演说
  • 开业开幕
  • 思想学习
  • 征文演讲
  • 经验材料
  • 述职报告
  • 调研报告
  • 工作汇报
  • 年终总结
  • 申报材料
  • 学习体会
  • 企划方案
  • 活动方案
  • 技巧经验
  • 模板范例
  • 思想宣传
  • 经济工作
  • 工作报告
  • 组织人事
  • 反腐倡廉
  • 慰问贺电
  • 先进事迹
  • 思想汇报
  • 入党申请书
  • 党会发言
  • 先进性教育
  • 入团申请书
  • 个人简历
  • 演讲稿
  • 调查报告
  • 实习报告
  • 和谐社会
  • 观后感
  • 读后感
  • 作文范文
  • 自我鉴定
  • 讲话稿
  • 自查报告
  • 北理工汇编语言实验报告例文

    时间:2020-11-08 10:54:14 来源:蒲公英阅读网 本文已影响 蒲公英阅读网手机站

    相关热词搜索:例文 汇编语言 实验

     本科实验报告

     实验名称:

      CPU 与汇编实验

     课程名称:

     算术运算类操作实验 实验时间:

     2014.10.14 任课教师:

     高平 实验地点:

     10-102 实验教师:

     高平 实验类型:

     □ 原理验证 □ 综合设计 □ 自主创新

     学生姓名:

     可少雄 学号/班级:

     1120121439/05611201 组

     号:

     学

     院:

     信息与电子学院 同组搭档:

     专

     业:

     信息对抗技术 成

     绩:

     实验二算术运算类操作实验 (基础与设计)

     一、实验要求和目的 1、了解汇编语言中的二进制、十六进制、十进制、BCD 码的表示形式; 2、掌握各类运算类指令对各状态标志位的影响及测试方法; 3、熟悉汇编语言二进制多字节加减法基本指令的使用方法; 4、熟悉无符号数和有符号数乘法和除法指令的使用; 5、掌握符号位扩展指令的使用。

     6、掌握BCD 码调整指令的使用方法 二、实验内容与步骤 1、对于两组无符号数,087H 和034H,0C2H 和5FH,试编程求这两组数的和差积商,并考 虑计算结果对标志寄存器中状态标志位的影响:

     计算状态标志 ·源代码如下:

     DATAS SEGMENT num1dw 087h num2dw 034h num3dw 0c2h num4dw 5Fh result1dw 4 dup(?) result2dw 4 dup(?)

      ;此处输入数据段代码

      DATAS ENDS

     STACKS SEGMENT

      ;此处输入堆栈段代码 STACKS ENDS

     CODES SEGMENT

      ASSUME CS:CODES,DS:DATAS,SS:STACKS START:

      MOV AX,DATAS

      MOV DS,AX

     mov bx,num2 mov ax,num1 addax,bx mov result1[0],ax mov ax,num1 subax,bx mov result1[2],ax mov ax,num1

     mulbx mov result1[4],ax mov ax,num1 divbx mov result1[6],ax mov bx,num4 mov ax,num3 addax,bx mov result2[0],ax mov ax,num3 subax,bx mov result2[2],ax mov ax,num3 mulbx mov result2[4],ax

      mov ax,num3 divbx mov result2[6],ax mov AH,4CH

      INT 21H CODES ENDS

      END START ·运行结果如下:

     计算 状态标志 表达式 结果 cf af zf of sf pf 087h+034h 00bb 0 1 0 0 0 1 087h-034h 0053 0 0 0 0 0 0 087h*034h 1b6c 0 0 0 0 0 1 087h/034h 0002 0 0 0 0 0 1

     0c2h+5fh 0121 0 1 0 0 0 1 0c2h-5fh 0063 0 1 0 0 0 1 0c2h*5fh 47fe 0 1 0 0 0 1 0c2h/5fh 0247 0 1 0 0 0 1 总结各运算对状态标志位的影响,及其意义。

     2、在数据段定义了两个多精度的有符号16 进制数,FIRST 和SECOND ,1)求两数的和 与差,并将结果存放在THIRD 为首地址的缓冲区中;2)如果把两组数据当作十进制数据 来处理,再次求两数的和与差,并将结果存放在FORTH 为首地址的缓冲区中。试编程实现 上述运算。

     FIRST DW 45 H,82H,96 H,57H SECOND DW 12 H,46H,83 H,45H 16进制结果10进制结果 FIRST +SECOND FIRST –SECOND 源代码如下:

     DATAS SEGMENT

      first db 45h,82h,96h,57h seconddb 12h,46h,83h,45h thirddb 8 dup(?) forthdb 8 dup(?);此处输入数据段代码 DATAS ENDS STACKS SEGMENT

      ;此处输入堆栈段代码 STACKS ENDS CODES SEGMENT

      ASSUME CS:CODES,DS:DATAS,SS:STACKS START:

      MOV AX,DATAS

      MOV DS,AX mov cx,4 mov si,0

     l1: moval,first[si] movbl,second[si] addal,bl mov third[si],al moval,first[si] subal,bl mov third[si+4],al incsi loop l1

     mov cx,4 mov si,0

     l2: moval,first[si] movbl,second[si]

     addal,bl daa mov forth[si],al moval,first[si] subal,bl das mov forth[si+4],al incsi

      loop l2 ;此处输入代码段代码

      MOV AH,4CH

      INT 21H CODES ENDS END START ·结果如下:

     前8个数据是first和second数组,后面紧接着8个数是first与second相加和想减的16进制结果,为57,c8,19,9c,33,3c,13,12;再接下来是10进制结果,为57,28,79,82,33,36,13,12

     3、编程计算((Z +X*Y -328) -V)/ Y,其中X、Y、Z、V 均为16 位带符号数,假设初始数 据分别装入X、Y、Z、V 单元,要求上式计算结果的商存入AX,余数存入DX 寄存器。

     ·源代码如下:

     DATAS SEGMENT xdw 3fh ydw 0ffh zdw 2

      v dw 34;此处输入数据段代码

      DATAS ENDS CODES SEGMENT

     ASSUME CS:CODES,DS:DATAS,SS:STACKS START:

      MOV AX,DATAS

      MOV DS,AX movbx,y movax,x imulbx sub ax,328 movbx,z addax,bx movbx,v subax,bx movbx,y idivbx

      MOV AH,4CH

      INT 21H CODES ENDS END START ·结果如下:

     Ax=4c3d,dx=0096

    • 范文大全
    • 职场知识
    • 精美散文
    • 名著
    • 讲坛
    • 诗歌
    • 礼仪知识