資源簡介
華中科技大學計算機學院計算機系統基礎實驗,含3次實驗提交結果,以及實驗報告,報告含實驗過程步驟。
代碼片段和文件信息
/*?
?*?CS:APP?Data?Lab?
?*?
?*?
?*?
?*?bits.c?-?Source?file?with?your?solutions?to?the?Lab.
?*??????????This?is?the?file?you?will?hand?in?to?your?instructor.
?*
?*?WARNING:?Do?not?include?the??header;?it?confuses?the?dlc
?*?compiler.?You?can?still?use?printf?for?debugging?without?including
?*??although?you?might?get?a?compiler?warning.?In?general
?*?it‘s?not?good?practice?to?ignore?compiler?warnings?but?in?this
?*?case?it‘s?OK.??
?*/
#if?0
/*
?*?Instructions?to?Students:
?*
?*?STEP?1:?Read?the?following?instructions?carefully.
?*/
You?will?provide?your?solution?to?the?Data?Lab?by
editing?the?collection?of?functions?in?this?source?file.
INTEGER?CODING?RULES:
?
??Replace?the?“return“?statement?in?each?function?with?one
??or?more?lines?of?C?code?that?implements?the?function.?Your?code?
??must?conform?to?the?following?style:
?
??int?Funct(arg1?arg2?...)?{
??????/*?brief?description?of?how?your?implementation?works?*/
??????int?var1?=?Expr1;
??????...
??????int?varM?=?ExprM;
??????varJ?=?ExprJ;
??????...
??????varN?=?ExprN;
??????return?ExprR;
??}
??Each?“Expr“?is?an?expression?using?ONLY?the?following:
??1.?Integer?constants?0?through?255?(0xFF)?inclusive.?You?are
??????not?allowed?to?use?big?constants?such?as?0xffffffff.
??2.?Function?arguments?and?local?variables?(no?global?variables).
??3.?Unary?integer?operations?!?~
??4.?Binary?integer?operations?&?^?|?+?<>>
????
??Some?of?the?problems?restrict?the?set?of?allowed?operators?even?further.
??Each?“Expr“?may?consist?of?multiple?operators.?You?are?not?restricted?to
??one?operator?per?line.
??You?are?expressly?forbidden?to:
??1.?Use?any?control?constructs?such?as?if?do?while?for?switch?etc.
??2.?Define?or?use?any?macros.
??3.?Define?any?additional?functions?in?this?file.
??4.?Call?any?functions.
??5.?Use?any?other?operations?such?as?&&?||?-?or??:
??6.?Use?any?form?of?casting.
??7.?Use?any?data?type?other?than?int.??This?implies?that?you
?????cannot?use?arrays?structs?or?unions.
?
??You?may?assume?that?your?machine:
??1.?Uses?2s?complement?32-bit?representations?of?integers.
??2.?Performs?right?shifts?arithmetically.
??3.?Has?unpredictable?behavior?when?shifting?an?integer?by?more
?????than?the?word?size.
EXAMPLES?OF?ACCEPTABLE?CODING?style:
??/*
???*?pow2plus1?-?returns?2^x?+?1?where?0?<=?x?<=?31
???*/
??int?pow2plus1(int?x)?{
?????/*?exploit?ability?of?shifts?to?compute?powers?of?2?*/
?????return?(1?<??}
??/*
???*?pow2plus4?-?returns?2^x?+?4?where?0?<=?x?<=?31
???*/
??int?pow2plus4(int?x)?{
?????/*?exploit?ability?of?shifts?to?compute?powers?of?2?*/
?????int?result?=?(1?<?????result?+=?4;
?????return?result;
??}
FLOATING?POINT?CODING?RULES
For?the?problems?that?require?you?to?implent?floating-point?operations
the?coding?rules?are?less?strict.??You?are?allowed?to?use?looping?and
conditional?control.??You?are?allowed?to?use?both?ints?and?unsigneds.
You?can?use?arbitrary?integer?and?unsigned?constan
- 上一篇:數據挖掘與機器學習課設
- 下一篇:MQ7一氧化碳傳感器源碼.zip
評論
共有 條評論