arctan 在verilog 里是1qn或2qn格式,所以要把浮点数转换成1qn格式

1、dec2bin(十进制整数变为二进制)

Convert decimal to binary number in string

expand all in page

Syntax

str = dec2bin(d)
str = dec2bin(d,n)

 

Description

returns the

str = dec2bin(d) binary representation of d as a string. d must be a nonnegative integer smaller than 2^52.

str = dec2bin(d,n) produces a binary representation with at least n bits.

The output of dec2bin is independent of the endian settings of the computer you are using.

2参考:https://zhidao.baidu.com/question/431648565.html?qbl=relate_question_0

这两个都是我收集的,验证过没问题
方案一:
%函数(1)含小数的十进制,会调用函数二
function y=f_d2b(n)
strn=strtrim(num2str(n));
p=length(strn);
if isempty(find(strn=='.'))
y=d2b(n); %这里
return;
else
for i=1:p
if find(strn(i)=='.')
k=i;
break;
end
end
%Retrieving INTEGER and FRACTIONAL PARTS as strings
i_part=strn(1:k-1);
f_part=strn(k:end);
%Converting the strings back to numbers
ni_part=str2num(i_part);
nf_part=str2num(f_part);
ni_part=d2b(ni_part);
strtemp='';
temp=nf_part;
t='1';s='0';
while nf_part>= 0
nf_part=nf_part*2;
if (nf_part==1) || (nf_part==temp)
strtemp=strcat(strtemp,t);
break;
elseif nf_part>1
strtemp=strcat(strtemp,t);
nf_part=nf_part-1;
else
strtemp=strcat(strtemp,s);
end
end
if ni_part==0
y=strcat('0.',strtemp);
else
y=strcat(ni_part,'.',strtemp);
end
end
%%%%%%%%%%%
%函数(2)转换整数部分
function y=d2b(n)
strtemp='';
strn=strtrim(num2str(n));
if n<0
fprintf(' %f is not a valid number\n',n)
end
while n~=0
strtemp=strcat(num2str(mod(n,2)),strtemp);
n=floor(n/2);
end
y=strtemp;
方案二:
function Mydec2bin(x)
%x----------the decimal number
%
%Recod of version:
% Date Programmer Description of change
% ======= ========= =================
% 9/26/2009 Iptest Original code
flag=x>0;T=abs(x);T1=fix(T);T2=T-T1;flag1=T1>0;flag2=T2>0;
i=1;j=1;
%for positive number
%integer part origin code
if flag1==1;
flag3=1;
while T1>0
N0(i)=mod(T1,2);T1=fix(T1/2);
i=i+1;
end
n=length(N0);
for ii=1:n
N(ii)=N0(n-ii+1);
end
else
N=[];flag3=0;
end
%point part origin code
if flag2==1;
flag4=1;
while T2~=0 %maybe come out no ending situation
M(j)=(T2*2>1)*fix(T2*2)+(T2*2==1);
T2=(T2*2>1)*(T2*2-1)+(T2*2<1)*T2*2;
j=j+1;
end
else
M=[];flag4=0;
end
%for real situation
if flag==1%for positive number
if flag3==1;
disp('integer part origin code');
disp(N);
disp('integer part reverse code:');
disp(N);
else
disp('Not have integer part !');
end
if flag4==0;
disp('Not have point part !');
else
disp('point part origin code:');
disp(M);
disp('point part reverse code:');
disp(M);
end
else %for negative number
N=[1 N];
if flag1==1
if flag3==1;
disp('integer part origin code');
disp(N);
disp('integer part reverse code:');
N1=[N(1) ~N(2:end)];
disp(N1);
else
disp('Not have integer part !');
end
if flag4==0;
disp('Not have point part !');
else
disp('point part origin code:');
disp(M);
disp('point part reverse code:');
M1=[~M];
disp(M1);
end
else
disp('integer part reverse code for symbol code:');
disp(N);
if flag4==0;
disp('Not have point part !');
else
disp('point part origin code:');
disp(M);
disp('point part reverse code:');
M1=[~M];
disp(M1);
end
end
end
disp ('if there have some problem for the code please turn it out,thanks!')

double转换为二进制的更多相关文章

  1. double转换为int以及浮点型相加损失精度问题

    最近在做支付相关模块的业务,数据库字段却使用的是double类型,其实也行,只要计算不在sql语句中进行,也是没有问题的. 预先的类属性设置的是Double类型,自己算的时候发现小数相加会出现损失精度 ...

  2. 将十进制数据转换为二进制AND将二进制数据转换为十进制!

    一,将十进制数据转换为二进制:  //***********************************************            Console.WriteLine(&quo ...

  3. java_十进制数转换为二进制,八进制,十六进制数的算法

    java_十进制数转换为二进制,八进制,十六进制数的算法 java Ê®½øÖÆÊýת»»Îª¶þ½øÖÆ,°Ë½øÖÆ,Ê®Áù½øÖÆÊýµÄË㕨 using System; using S ...

  4. Java中实现十进制数转换为二进制的三种思路

    Java中实现十进制数转换为二进制 第一种:除基倒取余法 这是最符合我们平时的数学逻辑思维的,即输入一个十进制数n,每次用n除以2,把余数记下来,再用商去除以2...依次循环,直到商为0结束,把余数倒 ...

  5. java语言将任意一个十进制数数字转换为二进制形式,并输出转换后的结果

    package com.llh.demo; import java.util.Scanner; /** * * @author llh * */ public class Test { /* * 将任 ...

  6. 【转载】C#将图片转换为二进制流调用

    在C#中可以使用MemoryStream类.BinaryFormatter类等来操作图片,将图片读取到二进制数据流中,最终转成二进制数据流进行调用,详细的实现如下方法所示. private byte[ ...

  7. javascript 十进制转换为二进制

    1.十进制转换为二进制 var toBin = (n) => { if(n == 0) return '0'; var res = ''; while(n != 0) { res = n % 2 ...

  8. php 将16进制数串转换为二进制数据的函数

    /**     * 将16进制数串转换为二进制数据的函数     * @param $hexdata     * @return string bindata     */     function ...

  9. 深度学习原理与框架-Tfrecord数据集的制作 1.tf.train.Examples(数据转换为二进制) 3.tf.image.encode_jpeg(解码图片加码成jpeg) 4.tf.train.Coordinator(构建多线程通道) 5.threading.Thread(建立单线程) 6.tf.python_io.TFR(TFR读入器)

    1. 配套使用: tf.train.Examples将数据转换为二进制,提升IO效率和方便管理 对于int类型 : tf.train.Examples(features=tf.train.Featur ...

随机推荐

  1. WEB安全 - 认识与防御XSS攻击

    目录 什么是xss攻击? XSS的危害 XSS攻击分类 xss攻击示例 反射型攻击 - 前端URL参数解析 反射型攻击 - 后端URL参数解析 注入型攻击 - 留言评论 如何规避xss攻击? 总结 什 ...

  2. Objective-C Collection was mutated while being enumerated crash

    Collection was mutated while being enumerated

  3. 源码篇:Python 实战案例----银行系统

    import time import random import pickle import os class Card(object): def __init__(self, cardId, car ...

  4. Maven-SSM项目pom.xml配置以及springmvc配置以及mybatis配置及web.xml配置

    一.Maven本地仓库的pom.xml配置 (全部是mysql数据库) <project xmlns="http://maven.apache.org/POM/4.0.0" ...

  5. linux 开机进入initramfs无法开机

    4/4 用fsck命令开始检查.修复(fsck是个很好用了磁盘检测修复命令)输入:fsck -t ext4 /dev/sda1 (-t是指定文件系统类型:现在的多半是ext3和ext4,不知道,你就一 ...

  6. 51Nod 1677 treecnt

    一道比较基础的计数题,还是一个常用的单独计算贡献的例子. 首先看题目和范围,暴力枚举肯定是不可行的,而且\(O(n\ logn)\)的算法貌似很难写. 那我们就来想\(O(n)\)的吧,我们单独考虑每 ...

  7. STM32 M3内核的位带操作原理及步骤

    STM32 M3内核的位带操作原理及步骤 一.位带操作有什么用?什么是位带操作 位带操作的作用:可以实现对某一GPIO口寄存器(或SRAM内存中)的某一bit位直接写0或1,达到控制GPIO口输出(或 ...

  8. BugkuCTF web3

    前言 写了这么久的web题,算是把它基础部分都刷完了一遍,以下的几天将持续更新BugkuCTF WEB部分的题解,为了不影响阅读,所以每道题的题解都以单独一篇文章的形式发表,感谢大家一直以来的支持和理 ...

  9. 把cnblogs变成简书 - cnblogs博客自定义皮肤css样式

    吐槽 博客园cnblogs作为老牌的IT技术博客类网站,为广大的开发者提供了非常不错的学习交流平台. 虽然博客内容才是重点,但是如果有赏心悦目的页面不更好吗! cnblogs可以更换博客模板,并且提供 ...

  10. A. A Prank

    题意 有数列从小到大排列,都是不同范围1~ 1000,问你最多去掉多少个数字还能复原 由于wrong很多发所以写一下 链接 [http://codeforces.com/contest/1062/pr ...