网络-CDMA接受检验

{% blockquote 本文出自 http://svtter.github.io svtter.github.io %}

本文可以随意转载,但是转载请保留本信息.

做CDMA简单的接收处理。

文件

input:

-1 -1 -1  1  1 -1  1  1
-1 -1  1 -1  1  1  1 -1
-1  1 -1  1  1  1 -1 -1
-1  1 -1 -1 -1 -1 -1  1

new.c:

#include <stdio.h>
#include <math.h>
#define M 8
const int b[] = {-1, 1, -3, 1, -1, -3, 1, 1};
void show(int a[])
{
    int i;
    for(i = ; i < M; i++)
        printf("%5d", a[i]);
    puts("");
}
int main()
{
    int a[M];
    int i;
    freopen('input', 'r', stdin);
    while(1) {
        for(i = ; i < M; i++) {
            scanf("%d", &a[i]);
        }
        show(a);
        int sum = ;
        for(i = ; i < M; i++)
            sum += a[i] * b[i];
        printf("%d\n", sum/M);
    }
    return ;
}

bash-使用func和一般的sh的不同

如果只是单纯的使用function, 在终端中是可以使用的,但是当作一个可执行文件是不行的(例如:使用python调用)

如果使用.sh的方式来处理, 那么问题就在于管理上了 — 可能大量有大量的sh文件,所以说需要权衡利弊,自己使用了。

bash学得并不好,也没有认真的研究,暂且记录一下,日后再做补充

shell 

使用cd快速在目录间移动

  • 本文出自<svtter.github.io>

难得看见一篇好文= =

操作方法

在此学习并且记录。

  • 标记一个书签: mark [书签]
  • 进入一个书签: g [书签]
  • 输出全部标签: gs

实现原理

sudo vim /etc/profile

也可以使用:w !sudo tee %这种方式来保存

# mark
export MARKPATH=$HOME/.marks
export MARKDEFAULT=sanguo#设置你的默认书签,可以直接输入g跳转
function g {
   local m=$1
   if [ "$m" = "" ]; then m=$MARKDEFAULT; fi
   cd -P "$MARKPATH/$m" 2>/dev/null || echo "No such mark: $m"
}
function mark {
   mkdir -p "$MARKPATH"
   local m=$1
   if [ "$m" = "" ]; then m=$MARKDEFAULT; fi
   rm -f "$MARKPATH/$m"
   ln -s "$(pwd)" "$MARKPATH/$m"
}
function unmark {
   local m=$1
   if [ "$m" = "" ]; then m=$MARKDEFAULT; fi
   rm -i "$MARKPATH/$m"
}
function gs {
   ls -l "$MARKPATH" | grep ^l | cut -d ' ' -f 13-
}
_completemarks() {
   local curw=${COMP_WORDS[COMP_CWORD]}
   local wordlist=$(ls -l "$MARKPATH" | grep ^l | cut -d ' ' -f 13)
   COMPREPLY=($(compgen -W '${wordlist[@]}' -- "$curw"))
   return 
}
complete -F _completemarks g unmark
shell 

从grub rescue修复

修复grub-rescue模式

今天删除了一个多余的分区,结果grub找不到原来的启动mod了,也是学习了。

grub-rescue模式中只能用ls, insmod, set root= , set prefix= ,这几个命令。

使用ls显示所有的磁盘。
然后ls (hd0, X)/boot/grub2 查看启动的盘符。
set root=(hd0, X);
set prefix=(hd0, X)/boot/grub2
insmod normal
normal

发现没搞定,重启还是不幸。

使用# grub2-install /dev/sda

然后就搞定= =

grub 

bash相关知识

今天想用wget+正则写一个简单的dict,结果不幸失败了。。

[阅读全文]
shell