汇编: and,or逻辑运算指令

assume  cs:code


code segment
       
             ; 逻辑运算   按照二进制位运算
     start: mov ax,0
            
            mov al, 00001111B
            and al, 11110000B
            ;       00000000B    



            mov ax,0
            mov al, 00001111B
             or al, 11110000B
            ;       11111111B 

            mov ax,4c00H
            int 21H
             
    
code ends

end start

 

通过and,or逻辑运算指令实现大写转小写,小写转大写

assume cs:code, ds:data

data segment
   db 'puThon'
   db 'JAVA'

data ends

; z 122   7A  0111 1010  小写z
             ;1101 1111

; Z 90    5A  0101 1010  大写Z
            ; 0010 0000

code segment
  start: mov ax,data
         mov ds,ax
         mov bx,0
         mov cx,6
         
    ; 小写转大写
    upLet:  mov al,ds:[bx]
            and al,11011111B
            mov ds:[bx], al
            inc bx
            loop upLet
    
   mov cx,4
    ; 大写转小写 
   upX:  mov al,ds:[bx]
          or al,00100000B
          mov ds:[bx],al
          inc bx
          loop upX

         mov ax,4C00H
         int 21h
  

code ends

end start

 复制字符串

assume cs:code, ds:data

data segment
      db 'welcome to asm'
      db '--------------'
data ends

code segment
      start: mov ax, data
             mov ds, ax             

             mov cx, 7
             mov si,0
             mov di,16
             
      cp:    mov ax, ds:[si]
             mov ds:[di], ax

             add si,2
             add di,2
             loop cp

             mov ax,4C00H
             int 21H

code ends

end start




 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值