首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

使用有限类型和数量的运算操作实现一组给定功能的函数

后端 458.43KB 21 需要积分: 1
立即下载

资源介绍:

计算机组成原理实验要求 1、所有实验在IA-32+Linux+C+gcc 平台(开源项目平台)上进行; 2、所有实验要求在linux下创建与学号相关的用户,在此用户下编写调试代码; 例如:假设我的学号为1234567,则创建的用户名为sy1234567 3、请分别基于“计算机组成原理实验1.docx”和“实验1-数据表示实验要求”、“计算机组成原理实验2.docx”和“实验2-拆弹实验要求”、“计算机组成原理实验3.docx”和“实验3-缓冲区溢出攻击实验要求” 完成代码功能;
课程名称 计算机组成原理
专业班级:
号:
名:
指导教师:
报告日期:
1
实验 1 数据表示
1.1 实验概述
实验目的:更好地熟悉和掌握计算机中整数和浮点数的二进制编码表示。
实验目标:加深对数据二进制编码表示的了解。
实验要求:使用有限类型和数量的运算操作实现一组给定功能的函数。
实验语言:c
实验环境:linuxgcc
实验资料:datalab-handout.tar.gz
实验中,你需要解开一系列编程难题”——使用有限类型和数量的运算
作实现一组给定功能的函数
可用的运算符:“! ~ & ^ | + << >>”
运算符
描述
实例
!
逻辑非运算符。用来逆转操作数的逻辑状态。
果条件为真则逻辑非运算符将使其为假。
A && B 为假,则
!(A && B) 为真。
~
按位取反运算符。是一元运算符,具有"翻转"
效果,即 0 变成 11 变成 0
~60 -61
&
按位与运算符。如果同时存在于两个操作数中,
二进制 AND 运算符复制一位到结果中。
60 & 13 12
^
按位异或运算符。如果存在于其中一个操作数中
但不同时存在于两个操作数中,二进制异或运算
符复制一位到结果中。
60 ^ 13 49
|
按位或运算符。如果存在于任一操作数中,二进
OR 运算符复制一位到结果中。
60 | 13 61
+
把两个操作数相加
<<
二进制左移运算符。左操作数的值向左移动右操
作数指定的位数。
60 << 2 240
>>
二进制右移运算符。左操作数的值向右移动右操
作数指定的位数。
60 >> 2 15
2
1.2 实验内容
需要完成实验资料 datalab-handout.tar.gz bits.c 的函数功能,具体分
为三大类:位操作、补码运算和浮点数操作。
1位操作
1 列出了 bits.c 中一组操作和测试位组的函数。其中,“级别栏指出各函
数的度等(对于该数的实验值)给出数应现的输出
(即功能)“约束条件栏指出你的函数实现必须满足的编码规则(具体请查看
bits.c 相应函数注释)多操作符数量出你的函数实现中允许使用的
作符的最大数量。
1 位操作题目列表
函数名
功能
约束条件
最多操
作符数
1
lsbZero
x的最低有效位(LSB)清零
仅能使用! ~ &
^ | + << >>
5
2
byteNot
x的第n个字节取反(字节从LSB
开始到MSB依次编号为0-3
仅能使用! ~ &
^ | + << >>
6
2
byteXor
比较xy的第n个字节(字节从
LSB开始到MSB依次编号为0-3
若不同,则返回1;若相同,则返
0
仅能使用! ~ &
^ | + << >>
20
3
logicalAnd
x&& y
仅能使用! ~ &
^ | + << >>
20
3
logicalOr
x|| y
仅能使用! ~ &
^ | + << >>
20
3
rotateLeft
x循环左移n
仅能使用! ~ &
^ | + << >>
25
4
parityCheck
x有奇数个1,则返回1;否则,
返回0
仅能使用! ~ &
^ | + << >>
20
2)补码运算
2 列出了 bits.c 中一组使用整数的补码表示的函数。可参考 bits.c 中注释说
明和 tests.c 中对应的测试函数了解其更多具体信息。
3
2 补码运算题目列表
函数名
功能
约束条件
最多操
作符数
mul2OK
计算2*x,如果不溢出,则
返回1,否则,返回0
仅能使用~ & ^ | +
<< >>
20
mult3div2
计算(x*3)/2,朝零方向取
仅能使用! ~ & ^ | +
<< >>
12
subOK
计算x –y,如果不溢出,则
返回1,否则,返回0
仅能使用! ~ & ^ | +
<< >>
20
absVal
x的绝对值
仅能使用! ~ & ^ | +
<< >>
10
3)浮点数操作
3 列出了 bits.c 中一组浮点数二进制表示的操作函数。可参考 bits.c 中注释
说明和 tests.c 中对应的测试函数了解其更多具体信息。注意 float_abs 输入参数
和返回结果(以及 float_f2i 函数的输入参数)均为 unsigned int 类型,但应作为单
精度浮点数解释其 32 bit 二进制表示对应的值。
3 浮点数操作题目列表
函数名
功能
约束条件
最多操
作符数
float_abs
返回浮点数‘|f|’的二进制
表示,当输入参数是
NaN时,返回NaN
仅能使用任何整型/无符
号整型操作,包括||&&
以及ifwhile控制结构
10
float_f2i
返回浮点数‘f’的强制整
型转换“(int)f”表示
仅能使用任何整型/无符
号整型操作,包括||&&
以及ifwhile控制结构
30
1.3 实验设计
根据题目要求,选择合适的操作符来编写代码。
注意事项:
1、实验资料包中包含以下文件:
Makefile - Makes btest, fshow, and ishow
README - This file

资源文件列表:

sy1.zip 大约有3个文件
  1. sy1/
  2. sy1/1.docx 482.26KB
  3. sy1/bits.c 11.87KB
0评论
提交 加载更多评论
其他资源 LabVIEW TCP Server通信(长连接)
官方修改,客户端断开连接后可以重连并保持握手。
android Camera2 + zxing进行二维码解码
网上很多关于zxing的相关资源,但基本都是调用的camera或camerax进行集成的,由于摄像头原因,camera原生api又无法进行对焦,camerax在系统源码中又不是很方便导入到编译脚本,故使用了camera2进行集成。 关键代码调用: LuminanceSource source = new RGBLuminanceSource(width, height, data); BinaryBitmap bitmap1 = new BinaryBitmap(new HybridBinarizer(source)); Result qrCodeResult = null; MultiFormatReader multiFormatReader = new MultiFormatReader(); try { qrCodeResult = multiFormatReader.decode(bitmap1); } catch (NotFoundException e) { }
Linux Shell脚本攻略 第三版 pdf
好东东
PicaComic-master.zip
PicaComic-master.zip
PicaComic-master.zip PicaComic-master.zip PicaComic-master.zip
wxa_library.zip
wxa_library.zip
小猫回收站设置教程,配套图标.dll资源,以及音效设置等
pop猫回收站图标dll格式--张嘴+闭嘴+音效_回收站图标可爱资源
VC-Redist-HS
VC-Redist-HS
flowable-7.0.0.zip ( 0 积分下载 )
flowable-7.0.0.zip Github 下载很慢,给不方便上网的同学一个选择