It would be nice if the question gave a little more information about the context and how this would be used. As \leftrightarrow and \updownarrow are explicitly mentioned I assume that these arrows are meant to be a similar binary relation you could use in math-mode. One option is to use tikz as follows:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}
\tikzset{
% define default style for the arrows
myarrows/.style={scale=0.25,
baseline=(current bounding box.south),
>={Latex[length=2pt]},
<->
}
}
\newcommand\biarrow[1][]{\mathbin{\tikz[myarrows,#1]{
\draw(0,0.5)--++(1,0);\draw(0.5,0)--++(0,1);
}}}
\newcommand\diarrow[1][]{\mathbin{\tikz[myarrows,#1]{
\draw(0,0)--(1,1);\draw(0,1)--(1,0);
}}}
\begin{document}
$A \biarrow B$
$A \diarrow[blue] B$
$A \diarrow[densely dotted, xscale=3] B$
\end{document}
This code produces:

The the code defines two macros, \biarrow and \diarrow, that use \tikz{...} to draw the arrows. The macros accept an optional argument that can be used to apply tikz styling, as in the second and third examples above. I have using \tikzset to define common styling for both macros.
If it is going to be used in superscripts and subscripts etc then this should be defined using \mathpalette; see The mysteries of \mathpalette
Edit
If you don't want to use these in math-mode then the macros become simpler as you can drop the \mathbin:
\newcommand\biarrow[1][]{\tikz[myarrows,#1]{
\draw(0,0.5)--++(1,0);\draw(0.5,0)--++(0,1);
}}
\newcommand\diarrow[1][]{\tikz[myarrows,#1]{
\draw(0,0)--(1,1);\draw(0,1)--(1,0);
}}