学习汇编的第七天

本文介绍了逻辑指令在二进制位运算中的使用,包括AND和OR操作。通过示例展示了如何进行位与和位或运算,并且提到了ASCII码在数据表示中的作用。此外,还提供了一段汇编代码示例,涉及数据段和堆栈的设置。
摘要由CSDN通过智能技术生成

逻辑指令

逻辑运算 按照二进制位运算

and 指令

与运算 将相对应的位 相同为1,不同为0

1 and 1 = 1

1 and 0 = 0

0 and 0 = 0

mov al,00001111B
and al,11110000B l结果为0000 0000
mov al,00001010B
and al,00001111B l结果为0000 1010
         0000 1111 
and      1111 0000
结果为:  0000 0000
          0000 1111 
and       0000 0101
结果为:   0000 0101

or 指令

与运算 将相对应的位 是要有一个是1.那么结果为1

1 or 1 = 1

1 or 0 = 1

0 or 1 = 1

0 or 0 = 0

mov al,00001111B
or  al,11110000B l结果为1111 1111
mov al,00001010B
and al,00001111B l结果为0000 1111
         0000 1111 
and      1111 0000
结果为:  1111 1111
        0000 1111 
and     0000 0101
结果为: 0000 1111

以字符形式给出数据

ASCII码(这里自行学习)

assume cs:code,ds,data,ss:stack

data segment
      ;db 48,49,50,51,52,53
      ;db 65,66,67,68,69,70
      ;db 97,98,99
      db '123456abcdefg hiljk!!!'   ;单引号,这样更方便
data ends

stack segment stack
        dw 0,0,0,0
        dw 0,0,0,0
        dw 0,0,0,0
        dw 0,0,0,0
stack ends

code segment
   start: mov bx,stack
          mov ss,bx
          mov sp,128
          
          mov bx,data
          mov ds,bx
          
          
          mov ax,4C00H
          int 21H
code ends

end start
mov al,'a'  ;这样写也是对的
mov al,'b'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值