zoukankan      html  css  js  c++  java
  • Matlab中的按位操作、进制转换、读/写十六进制和二进制的txt

    2020-09-27  14:06:37

    整理一些matlab中的按位操作技巧和一些读/写txt的函数:

    函数名称 函数功能 使用样例 运行结果 说明
    bitget  获取二进制数某一位的值 A = bitget(8,4); A = 1 十进制数8对应的二进制数(1000)的第4位
    A = bitget(8,8: -1:1); A = [0 0 0 0 1 0 0 0] 取出所有位
    bitset 设置指定的位为0或1 A = bitset(uint8(9), 4,0) A = 1 将9的第4位设置为0
    bitshift 移位操作 A = bitshift(8, -2) A = 2 将8右移2位(第二个参数小于0为右移,大于0为左移)
    bitxor  按位异或 A = bitxor(2,9) A = 11 (0010)xor(1001) =(1011)  = 11(dec)
    dec2hex 十进制数转为十六进制数 A = dec2hex(256,4) A = '0100' 将十进制数256转为4位十六进制数为0x0100(输入需为整数)
    hex2dec 十六进制数转为十进制数 A = hex2dec('0100') A = 256 将十六进制数0x0100转为十进制数为256
    dec2bin  十进制数转为二进制数 A = dec2bin (6,8) A = '00000110' 将十进制数6转为八位的二进制数(输入需为整数)
    bin2dec  二进制数转为十进制数 A = bin2dec('00000010') A = 2 将二进制数00000010转为十进制数
    sign 判断正负 A = sign(-5) A = -1 正数返回1,负数返回-1,零返回0
    upper 将字母转为大写 A = upper('b') A = 'B'  
    lower 将字母转为小写 A = upper('B') A = 'b'  
            十六进制 二进制
    从txt读出

    data_hex = textread('data.txt','%s')';

    data_dec = hex2dec(data_hex)';%转为十进制

    data_bin = textread('data.txt','%s')';

    data_dec = bin2dec(data_bin)';%转为十进制

    写入txt

    fid = fopen('data.txt','w'); 

    temp = ['0x',dec2hex(256)];%十进制256的十六进制为'100',再连接'0x'得到'0x100'

    fprintf(fid,'%s ',temp);

     

    fid = fopen('data.txt','w'); 

    temp = dec2bin(256);%十进制256的二进制为'100000000'

    fprintf(fid,'%s ',temp);

    参考:

    https://blog.csdn.net/qq_41985630/article/details/84313556

  • 相关阅读:
    [NOI2009]管道取珠 DP + 递推
    poj3207 Ikki's Story IV
    NOIP2016Day1T2天天爱跑步(LCA+桶)
    NOIP2016Day2T3愤怒的小鸟(状压dp) O(2^n*n^2)再优化
    NOIP2016Day1T3换教室(floyd+期望dp)
    bzoj1854: [Scoi2010]游戏(匈牙利) / GDKOI Day2 T2(最大流)
    [CodeVs4927]线段树练习5
    基数排序的奇技淫巧
    bzoj2724: [Violet 6]蒲公英(离散化+分块)
    bzoj1483: [HNOI2009]梦幻布丁(链表+启发式合并)
  • 原文地址:https://www.cnblogs.com/CCWangsj/p/13739627.html
Copyright © 2011-2022 走看看