• 《IBM —PC 汇编语言程序设计》 第一章习题



     
    1.将下列十进制数转换为二进制数和十六进制数:
    (1) 369
    (2) 10000
    (3) 4095
    (4) 32767
    答:
    (1) 369=1 0111 0001B=171H
    (2) 10000=10 0111 0001 0000B=2710H
    (3) 4095=1111 1111 1111B=FFFH
    (4) 32767=111 1111 1111 1111B=7FFFH
     

     
    2. 将下列二进制数转换为十六进制数和十进制数:
    (1) 10 1101
    (2) 1000 0000
    (3) 1111 1111 1111 1111 (4) 1111 1111
    答:
    (1) 10 1101B=2DH=45
    (2) 1000 0000B=80H=128
    (3) 1111 1111 1111 1111B=FFFFH=65535
    (4) 1111 1111B=FFH=255
     

     
    3. 将下列十六进制数转换为二进制数和十进制数:
    (1) FA
    (2) 5B
    (3) FFFE
    (4) 1234
    答:
    (1) FAH=1111 1010B=250
    (2) 5BH=101 1011B=91
    (3) FFFEH=1111 1111 1111 1110B=65534
    (4) 1234H=1 0010 0011 0100B=4660
     

     
    4. 完成下列十六进制数的运算,并转换为十进制数进行校核:
    (1) 3A+B7
    (2) 1234+AF
    (3) ABCD-FE
    (4) 7AB ×6F
    答:
    (1) 3A+B7H=F1H=241
    (2) 1234+AFH=12E3H=4835
    (3) ABCD-FEH=AACFH=43727
    (4) 7AB×6FH=35325H=217893
     
     
    补充:十六进制的乘除法怎么运算

    十六进制的乘除法运算跟十进制一样但是规则是:逢知16进1。以计算350AH*12H为例:

    先用2*350A

    2*A=20   进一位余20-16=4

    2*0=0     进零位余0加上面的进位等于1

    2*5=10   进零位余A

    2*3=6     进零位余6

    所以2*350A=6A14

    同理10*350A=350A0

    最后350AH*12H=6A14+350A0=3BAB4


     
    5. 下列各数均为十进制数,请用8 位二进制补码计算下列各题,并用十六进制数表示其运算结果。
    (1) (-85)+76
    (2) 85+(-76)
    (3) 85-76
    (4) 85-(-76)
    (5) (-85)-76
    (6) -85-(-76)
    答:
    (1) (-85)+76=1010 1011B+0100 1100B=1111 0111B=0F7H                                                       ;CF=0;OF=0
    (2) 85+(-76)=0101 0101B+1011 0100B=0000 1001B=09H                                                        ;CF=1;OF=0
    (3) 85-76=0101 0101B-0100 1100B=0101 0101B+1011 0100B=0000 1001B=09H                   ;CF=0;OF=0
    (4) 85-(-76)=0101 0101B-1011 0100B=0101 0101B+0100 1100B=10100001B=0A1H               ;CF=0;OF=1
    (5) (-85)-76=1010 1011B-0100 1100B=1010 1011B+1011 0100B=0101 1111B=5FH                 ;CF=0;OF=1
    (6) -85-(-76)=1010 1011B-1011 0100B=1010 1011B+0100 1100B=11110111B=0F7H                ;CF=0;OF=0
     
    补充:
    5.1 补码转原码:在有符号的二进制计算中,是用补码来计算的,计算后的值应该要转成源码,补码转原码其实就是再将补码进行一次求补码的操作。
    5.2 
    • 当两个符号位相同的数做加法时,如果结果的符号位发生变化,则为溢出.
    • 当两个符号位不同的数做减法时,以A-B=C为例,如果A与C的符号位不同则为溢出.
    • 其它情况下均不会有溢出.
    5.3
    • 当两个数相加的结果的长度增大时会产生进位.
    • 两个不同符号数相减,若被减数为负,减 数为正,相减后CF=0;
    • 当正数大于等于 负数的绝对值时,相加后产生进位,CF=1否则 CF=0

     
    6 下列各数为十六进制表示的8 位二进制数,请说明当它们分别被看作是用补码表示的带符号数或无符号数时,它们所表示的十进制数是什么?
    (1) D8
    (2) FF
    答:
    (1) D8H 表示的带符号数为-40, D8H 表示的无符号数为216;
    (2) FFH 表示的带符号数为-1, FFH 表示的无符号数为255。
     

     
    7 下列各数均为用十六进制表示的8 位二进制数,请说明当它们分别被看作是用补码表示的数或字符的 ASCII 码时,它们所表示的十进制数及字符是什么?
    (1) 4F
    (2) 2B
    (3) 73
    (4) 59
    答:
    (1) 4FH 表示的十进制数为79,4FH 表示的字符为 O;
    (2) 2BH 表示的十进制数为43,2BH 表示的字符为+;
    (3) 73H 表示的十进制数为115,73H 表示的字符为 s;
    (4) 59H 表示的十进制数为89, 59H 表示的字符为 Y 。
  • 相关阅读:
    .NET实现Excel文件的读写 未测试
    权限管理设计
    struts1中配置应用
    POJ 2139 Six Degrees of Cowvin Bacon(floyd)
    POJ 1751 Highways
    POJ 1698 Alice's Chance
    POJ 1018 Communication System
    POJ 1050 To the Max
    POJ 1002 4873279
    POJ 3084 Panic Room
  • 原文地址:https://www.cnblogs.com/lintianxiajun/p/12739357.html
Copyright © 2020-2023  润新知