鱼C论坛

 找回密码
 立即注册
查看: 2999|回复: 4

[学习笔记] 《零基础入门学习汇编语言》第七讲与检测点2.1

[复制链接]
发表于 2017-6-23 20:25:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 shuiyu 于 2017-12-8 11:56 编辑

小白刚学,不对的请各位大佬指正,谢谢


一、
(1)字在寄存器中的存储:一个字可以存在一个16位寄存器中,这个字的高位字节和低位字节自然就存在这个寄存器的高8位寄存器和低8位
寄存器中。
(2)关于数制的讨论:后面跟着H的为十六进制,后面跟着B的为二进制。一个字等于两个字节,一个十六进制为一个字节(计算就用计算器
就行了
(3)几条汇编指令:汇编指令不区分大小写!!
        mov 差不多就是赋值的意思,把后面的熟赋值给前面的。
        add  相当于加法,两个数相加,然后赋值到前面那个变量上
        如果两个字相加,超过了一个字的容量,最前面的超出的部分会丢失。
        这里的丢失,指的是进位制不能在 8 位寄存器中保存,但是 CPU 不是并真的不丢弃 这个进位值,这个问题会在后面的课程中讨论。

二、检测点2.1
(1) 写出每条汇编指令执行后相关寄存器中的值。

mov ax,62627           AX=F4A3H   解:先是十进制转化成十六进制就可以得到答案了


mov ah,31H             AX=31A3H  解:化成二进制,把前面的AX也换为二进制,因为这个是高位寄存器,所以把AX的前八位换成现在的,然后
                                                           再转化为十六进制就是答案了。

mov al,23H                     AX=3123H  解:与上题同理,只是换低位寄存器。

add ax,ax                      AX=6246H  解:加法,就不用多说了吧

mov bx,826CH           BX=826CH  解:简单的赋值

mov cx,ax                      CX=6246H  解:简单的赋值

mov ax,bx                      AX=826CH  解:简单的赋值

add ax,bx                      AX=04D8H  解:相加的到104D8,超出容量了,所以前面的1丢失,变成04D8.


mov al,bh                      AX=0482H  解:ax为:0000 0100 1101 1000  bx为:1000 0010 0110 1100 把bx的高位赋值给ax的低位,再转化为十六进制


mov ah,bl                      AX=6C82H  解:ax为:0000 0100 1000 0010 bx为:1000 0010 0110 1100 把bx的低位赋值给ax的高位,再转化为十六进制


add ah,ah                      AX=D882H  解:ax为:0110 1100 1000 0010 高位相加,即0110 1100+0110 1100=1101 1000,然后填上低位的八位


add al,6                       AX=D888H  解:低位加6

add al,al                     AX=D810H  解:ax为:1101 1000 1000 1000 低位相加,即1000 1000+1000 1000=1 0001 0000,超出容量了,所以前面的
                                                            1丢失了,即低位相加得0001 0000;加上高位的八位得到答案


mov ax,cx                      AX=6246H  解:简单的赋值,前面得CX=6246H

(2)只能使用目前学过的汇编指令,最多使用4条指令,编程计算2的4次方。
        mov  ax,2         AX=2  

        add  ax,ax        AX=4  

        add  ax,ax        AX=8  

        add  ax,ax        AX=16  



谢谢小甲鱼带来的视频教程,感谢!!


   
本节结束,多谢览阅!
小白刚学,不对的请各位大佬指正,谢谢

评分

参与人数 2鱼币 +9 收起 理由
小甲鱼 + 4 支持楼主!
兰陵月 + 5 热爱鱼C^_^

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-12-7 22:56:37 | 显示全部楼层
为什么我最后两个低位相加得出数是10A啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-8 12:01:15 | 显示全部楼层
h1056599884 发表于 2017-12-7 22:56
为什么我最后两个低位相加得出数是10A啊

你好,我刚刚从头开始计算了一遍(用计算器),发现我是没写错的。我重新编辑了一下解答过程,你再认真的对照一下看看是哪里出问题了。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-12-8 13:05:16 From FishC Mobile | 显示全部楼层
我计算器按错了 我已经算出来了,谢谢你的解答
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-8 16:38:56 | 显示全部楼层
h1056599884 发表于 2017-12-8 13:05
我计算器按错了 我已经算出来了,谢谢你的解答

哈哈,客气了。一起加油
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-29 16:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表