LAB2--datalab--(包括如何在虚拟机中共享文件)

 实验题目:LAB2-datalab

实验目的:填写bits.c文件中尚未完成的各个函数的内容,但是,本实验要求只使用有限数量、规定的操作符。

实验环境:个人电脑、linux发行版本

实验内容及操作步骤:

  • 共享文件

步骤:

1.在虚拟机内添加路径:进入虚拟机软件,点开工具栏上方虚拟机,点击设置,选择选项,查看共享文件夹,点击添加,下一步

2.在主机路径中点击浏览,然后将主机中要共享的文件夹添加到目录下。

3.点击启用此共享,完成。

4.在虚拟机中找到munu文件夹,进入,即可找到共享的文件夹。然后将文件夹剪切至桌面即可使用。

二、填写函数

1.bitAnd - x&y using only ~ and |

    Example: bitAnd(6, 5) = 4

    Legal ops: ~ |

   Max ops: 8

    Rating: 1

函数内容:

函数讲解:这个函数是想用~|完成两数字相与,这个利用德摩根对偶律即可

2.getByte - Extract byte n from word x

 *   Bytes numbered from 0 (LSB) to 3 (MSB)

 *   Examples: getByte(0x12345678,1) = 0x56

 *   Legal ops: ! ~ & ^ | + << >>

 *   Max ops: 6

 *   Rating: 2

函数内容:

函数讲解:这有个32位的数字,但是他是16进制的,从低位0开始,一字节一字节的数,数到需要的n就输出这个位置(这个位置不是指比特位)对应一字节的数字。这个的思路就是先算移动的位数(比特位),是n*2^3个位,(这里左移一位就是移动了1*2^3个位数,左移两位就是2*2^3个位数)然后x左移相应位数,再跟0xff相与得到这个字节的数字。

3.logicalShift - shift x to the right by n, using a logical shift

 *   Can assume that 0 <= n <= 31

 *   Examples: logicalShift(0x87654321,4) = 0x08765432

 *   Legal ops: ! ~ & ^ | + << >>

 *   Max ops: 20

 *   Rating: 3

函数内容:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值