When we pass data to functions we follow the conventions defined in th การแปล - When we pass data to functions we follow the conventions defined in th ไทย วิธีการพูด

When we pass data to functions we f

When we pass data to functions we follow the conventions defined in the AAPCS. We try to fill the first 4 registers r0 to r3. If more data is expected we must use the stack. This means that if we were to pass a big chunk of data to a function we may end spending a lot of time just preparing the call (setting registers r0 to r3 and then pushing all the data on top of the stack, and remember, in reverse order!) than running the code of the function itself.

There are several cases when this situation arises. In a language like C, all parameters are passed by value. This means that the function receives a copy of the value. This way the function may freely modify this value and the caller will not see any changes in it. This may seem inefficient but from a productivity point of view, a function that does not cause any side effect to its inputs may be regarded as easier to understand than one that does.
0/5000
จาก: -
เป็น: -
ผลลัพธ์ (ไทย) 1: [สำเนา]
คัดลอก!
เมื่อเราส่งผ่านข้อมูลไปยังฟังก์ชัน เราปฏิบัติตามข้อตกลงที่กำหนดไว้ใน AAPCS เราพยายามใส่ r0 ทะเบียน 4 แรกกับ r3 ถ้าคาดว่าข้อมูล เราต้องใช้กองซ้อน หมายความ ว่า ถ้าเราผ่านท่อขนาดใหญ่ของข้อมูลไปยังฟังก์ชัน เราอาจสิ้นสุดเวลาเพียงเตรียมการเรียกใช้ (ตั้งค่า r0 ทะเบียน r3 และผลักดันข้อมูลทั้งหมดด้านบนของกองซ้อนแล้ว และ จำ ถอยหลัง) กว่าการเรียกใช้รหัสของฟังก์ชันเองมีหลายกรณีเมื่อเกิดสถานการณ์นี้ ในภาษาเช่น C พารามิเตอร์ทั้งหมดจะถูกส่งผ่าน โดยค่า ซึ่งหมายความ ว่า ฟังก์ชันได้รับสำเนาของค่า วิธีนี้ฟังก์ชันสามารถปรับเปลี่ยนค่านี้ได้อย่างอิสระ และผู้เรียกจะไม่เห็นการเปลี่ยนแปลงใด ๆ ใน นี้อาจดูเหมือนไม่ ได้จากผลผลิตจุดของมุมมอง ฟังก์ชันที่ทำให้เกิดผลข้างเคียงใด ๆ กับอินพุตอาจถือเป็นง่ายต่อการเข้าใจมากกว่าที่
การแปล กรุณารอสักครู่..
ผลลัพธ์ (ไทย) 2:[สำเนา]
คัดลอก!
เมื่อเราผ่านข้อมูลไปยังฟังก์ชั่นที่เราไปตามธรรมเนียมปฏิบัติที่กำหนดไว้ใน AAPCs เราพยายามที่จะเติมแรก 4 ลงทะเบียนเพื่อ R0 r3 ถ้าข้อมูลมากขึ้นคาดว่าเราจะต้องใช้สแต็ค ซึ่งหมายความว่าถ้าเราจะผ่านก้อนใหญ่ของข้อมูลไปยังฟังก์ชั่นที่เราอาจจะใช้จ่ายเป็นจำนวนมากเวลาเพียงแค่การเตรียมความพร้อมการโทร (การลงทะเบียนการตั้งค่า R0 จะ r3 แล้วผลักดันข้อมูลทั้งหมดที่อยู่ด้านบนของสแต็คและจำไว้ใน เพื่อย้อนกลับ!) มากกว่าใช้รหัสการทำงานของตัวเอง. มีหลายกรณีเมื่อสถานการณ์เช่นนี้เกิดขึ้น ในภาษาเช่น C เป็นพารามิเตอร์ทั้งหมดจะถูกส่งผ่านโดยค่า ซึ่งหมายความว่าฟังก์ชั่นได้รับสำเนาของค่าที่ วิธีนี้ฟังก์ชั่นได้อย่างอิสระอาจปรับเปลี่ยนค่านี้และผู้ที่โทรมาจะไม่เห็นการเปลี่ยนแปลงใด ๆ ในนั้น นี้อาจดูเหมือนไม่มีประสิทธิภาพ แต่จากจุดผลิตในมุมมองของฟังก์ชั่นที่ไม่ก่อให้เกิดผลข้างเคียงที่ปัจจัยการผลิตใด ๆ อาจจะถือได้ว่าเป็นเข้าใจง่ายกว่าหนึ่งที่ไม่

การแปล กรุณารอสักครู่..
ผลลัพธ์ (ไทย) 3:[สำเนา]
คัดลอก!
เมื่อเราผ่านข้อมูลไปยังหน้าที่เราปฏิบัติตามข้อตกลงที่กำหนดใน aapcs . เราพยายามที่จะเติม 4 ลงทะเบียนก่อน r0 กับอาร์ทรี หากมีข้อมูลเพิ่มเติม คาดว่า เราจะต้องใช้สแต็ค หมายความว่าถ้าเราผ่านก้อนใหญ่ของข้อมูลไปยังฟังก์ชันที่เราอาจจะสิ้นสุดการใช้จ่ายมากเวลาเพียงแค่เตรียมเรียก ( การลงทะเบียน r0 กับ R3 แล้วกดข้อมูลทั้งหมดที่ด้านบนของสแต็คและจำไว้in order reverse ! ) code บ่อยครั้งและเป็น the -- itself . เก็บกวาดเก็บกวาด there are several cases , ไป this arises . ในภาษาเช่น C , พารามิเตอร์ทั้งหมดจะถูกส่งผ่านโดยค่า ซึ่งหมายความว่าฟังก์ชันที่ได้รับสำเนาของค่า วิธีนี้ทำงานได้อย่างอิสระอาจปรับเปลี่ยนค่านี้ และโทรจะไม่เห็นการเปลี่ยนแปลงใด ๆในนั้น นี้อาจดูเหมือนไม่มีประสิทธิภาพ ผลิตภาพ แต่จากมุมมองเป็นฟังก์ชันที่ไม่ก่อให้เกิดผลข้างเคียงใด ๆ ของกระผม อาจจะถือว่าเข้าใจง่ายกว่าที่คุณทำ
การแปล กรุณารอสักครู่..
 
ภาษาอื่น ๆ
การสนับสนุนเครื่องมือแปลภาษา: กรีก, กันนาดา, กาลิเชียน, คลิงออน, คอร์สิกา, คาซัค, คาตาลัน, คินยารวันดา, คีร์กิซ, คุชราต, จอร์เจีย, จีน, จีนดั้งเดิม, ชวา, ชิเชวา, ซามัว, ซีบัวโน, ซุนดา, ซูลู, ญี่ปุ่น, ดัตช์, ตรวจหาภาษา, ตุรกี, ทมิฬ, ทาจิก, ทาทาร์, นอร์เวย์, บอสเนีย, บัลแกเรีย, บาสก์, ปัญจาป, ฝรั่งเศส, พาชตู, ฟริเชียน, ฟินแลนด์, ฟิลิปปินส์, ภาษาอินโดนีเซี, มองโกเลีย, มัลทีส, มาซีโดเนีย, มาราฐี, มาลากาซี, มาลายาลัม, มาเลย์, ม้ง, ยิดดิช, ยูเครน, รัสเซีย, ละติน, ลักเซมเบิร์ก, ลัตเวีย, ลาว, ลิทัวเนีย, สวาฮิลี, สวีเดน, สิงหล, สินธี, สเปน, สโลวัก, สโลวีเนีย, อังกฤษ, อัมฮาริก, อาร์เซอร์ไบจัน, อาร์เมเนีย, อาหรับ, อิกโบ, อิตาลี, อุยกูร์, อุสเบกิสถาน, อูรดู, ฮังการี, ฮัวซา, ฮาวาย, ฮินดี, ฮีบรู, เกลิกสกอต, เกาหลี, เขมร, เคิร์ด, เช็ก, เซอร์เบียน, เซโซโท, เดนมาร์ก, เตลูกู, เติร์กเมน, เนปาล, เบงกอล, เบลารุส, เปอร์เซีย, เมารี, เมียนมา (พม่า), เยอรมัน, เวลส์, เวียดนาม, เอสเปอแรนโต, เอสโทเนีย, เฮติครีโอล, แอฟริกา, แอลเบเนีย, โคซา, โครเอเชีย, โชนา, โซมาลี, โปรตุเกส, โปแลนด์, โยรูบา, โรมาเนีย, โอเดีย (โอริยา), ไทย, ไอซ์แลนด์, ไอร์แลนด์, การแปลภาษา.

Copyright ©2025 I Love Translation. All reserved.

E-mail: