- ベストアンサー
補数(~)について
下記のようにenumの中で、(~0L) という記述があります。 これは反転して、「RE_SET_ALL=1」となるのですか? また、直値を入れるのではなく、(~0L)としているメリットは あるのでしょうか? /* E:SetOff */ typedef enum { RD_SET_ALL = (~0L), RD_SET_OFF = -1, RD_SET_DEL = -2, RD_BYTE_OFF = 0xff } RdeSetOff;
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (2)
- Fooky
- ベストアンサー率71% (59/82)
- finalanswer
- ベストアンサー率60% (182/303)
関連するQ&A
- Win8REをマルチブートで起動させる方法
Win8RE をsyslinuxに組み込むことはできませんでしょうか。VistaやWin7のREはsyslinuxでマルチブートできるようにUSBメモリーに作成しました。VistaやWin7の回復コンソール及びバックアップーツール は起動します。 Win8REだけうまくいきません。 syslinux.cfgの内容は以下のとおりです。 DEFAULT /syslinux/menu.c32 MENU TITLE SYSLINUX Boot Options Menu PROMPT 0 KBDMAP /syslinux/jp106.kbd MENU ROWS 14 MENU TABMSGROW 19 MENU CMDLINEROW 19 LABEL Puppy KERNEL /puppy/vmlinuz APPEND initrd=/puppy/initrd.gz psubdir=puppy LABEL KNOPPIX KERNEL /KNOPPIX/linux APPEND ramdisk_size=100000 init=/etc/init lang=ja apm=power-off vga=791 initrd=/KNOPPIX/minirt.gz nomce highres=off loglevel=0 libata.atapi_enabled=1 quiet SELINUX_INIT=NO nmi_watchdog=0 BOOT_IMAGE=knoppix LABEL WinPE-32bit KERNEL /grub.exe APPEND --config-file="find --set-root /winpe4_x86.iso;map /winpe4_x86.iso (0xff) || map --mem /winpe4_x86.iso (0xff);map --hook;chainloader (0xff);rootnoverify (0xff)" LABEL WinPE-64bit KERNEL /grub.exe APPEND --config-file="find --set-root /winpe4_AMD64.iso;map /winpe4_AMD64.iso (0xff) || map --mem /winpe4_AMD64.iso (0xff);map --hook;chainloader (0xff);rootnoverify (0xff)" LABEL Vista-32bit KERNEL /grub.exe APPEND --config-file="find --set-root /vista32.iso;map /vista32.iso (0xff) || map --mem /vista32.iso (0xff);map --hook;chainloader (0xff);rootnoverify (0xff)" LABEL Vista-64bit KERNEL /grub.exe APPEND --config-file="find --set-root /vista64.iso;map /vista64.iso (0xff) || map --mem /vista64.iso (0xff);map --hook;chainloader (0xff);rootnoverify (0xff)" LABEL Win7-64bit KERNEL /grub.exe APPEND --config-file="find --set-root /WinREamd64.iso;map /WinREamd64.iso (0xff) || map --mem /WinREamd64.iso (0xff);map --hook;chainloader (0xff);rootnoverify (0xff)" LABEL Win8-32RE KERNEL /grub.exe APPEND --config-file="find --set-root /win8re.iso;map /win8re.iso (0xff) || map --mem /win8re.iso (0xff);map --hook;chainloader (0xff);rootnoverify (0xff)" LABEL AVG Antivirus KERNEL /grub.exe APPEND --config-file="find --set-root /avg.iso;map /avg.iso (0xff) || map --mem /avg.iso (0xff);map --hook;chainloader (0xff);rootnoverify (0xff)" LABEL Acronis Backup & Recovery KERNEL /grub.exe APPEND --config-file="find --set-root /acronis.iso;map /acronis.iso (0xff) || map --mem /acronis.iso (0xff);map --hook;chainloader (0xff);rootnoverify (0xff)" LABEL Easeus To Do Backup KERNEL /grub.exe APPEND --config-file="find --set-root /easeus.iso;map /easeus.iso (0xff) || map --mem /easeus.iso (0xff);map --hook;chainloader (0xff);rootnoverify (0xff)" LABEL Paragon KERNEL /paragon/vmlinuzp APPEND initrd=/paragon/initrd.gz vga=0x314 language=en_US.UTF-8 medialable= LABEL Memtest86+ KERNEL /syslinux/memtest LABEL poweroff MENU LABEL * Poweroff * KERNEL /syslinux/poweroff.com LABEL reboot MENU LABEL * Reboot * KERNEL /syslinux/reboot.c32 Win8REの作成方法は下記サイトを参考にしました。Win7 AIKのDeploymentコマンドツールを使用しましたが、うまくいかなかったので、Windows ADKで試しました。Win8 Enterprize評価版からboot.wimを取り出してwinre.wimを作成後isoイメージを作成しました。作成した、isoイメージはUSBメモリーのルートディレクトリにコピーしてあります。 <参考サイト> http://d.hatena.ne.jp/palm84/20091024/1256479144 マルチブーとメニューからWin8-32REを選択するとWin8回復コンソールの起動画面が出るのですが、その後、下記エラー表示がでます。 実際のSYSTEMROOT ディレクトリ(X:\WINDOWS)が構成されたディレクトリ(X:\Windows.~bt\Windows)と異なるため、Windows PEを開始できません。このディレクトリは、dism.exeの/set-targetpathコマンドで構成できます。詳細についてはマニュアルを参照してください。 以上がエラー内容です。参考になるサイトやアドバイスがあれば、よろしくお願いします。
- ベストアンサー
- Windows系OS
- DOSバッチでUNIXテキストファイルの文字列置換
お世話になります。 早速ですが、 「DOSバッチでテキストファイルの文字列置換を行うプログラム」がいろいろ紹介されていたので、 皆さんのプログラムを流用させていただき、勝手に継ぎ足したDOSバッチプログラムを以下の ように作りました。 このDOSバッチで置換されたテキストファイルに2つの問題が発生して困っています。 問題 1)UNIXテキストファイルの改行コードがLFからCR+LFに変ってしまう。 文字列置換した後にファイルサイズが大きくなっていたので発見しました。 問題 2)空白行がなくなる。 DOSプログラムでは、対応不可でしょうか? やはり、sed,awk,WHS,power shell を使わないと解決しませんか? -(DOSプログラム f0.bat)------------------------------------------------------ ::** @echo off setlocal ENABLEDELAYEDEXPANSION set fname=%1 copy /b %fname% org >nul type nul >%fname% for /f "delims=" %%a in (org) do (set line=%%a&&set l=!line:abc=xxx!&&echo !l!>>%fname%) del org goto end :end exit /b 0 -(実行時の標準出力結果 list)----------------------------------------------- C:\>setlocal ENABLEDELAYEDEXPANSION C:\>set fname=t22.txt C:\>copy /b t22.txt org 1>nul C:\>type nul 1>t22.txt C:\>for /F "delims=" %a in (org) do (set line=%a && set l=!line:abc=xxx! && echo !l! 1>>t22.txt ) C:\>(set line=J0000000 && set l=!line:abc=xxx! && echo !l! 1>>t22.txt ) C:\>(set line=HHH && set l=!line:abc=xxx! && echo !l! 1>>t22.txt ) C:\>(set line=519 && set l=!line:abc=xxx! && echo !l! 1>>t22.txt ) C:\>(set line=2011-08-28 12:16:44.98302 && set l=!line:abc=xxx! && echo !l! 1>>t22.txt ) C:\>(set line=2011-08-28 12:16:44.016114 && set l=!line:abc=xxx! && echo !l! 1>>t22.txt ) C:\>(set line=0 && set l=!line:abc=xxx! && echo !l! 1>>t22.txt ) C:\>(set line=abc && set l=!line:abc=xxx! && echo !l! 1>>t22.txt ) C:\>del org C:\>goto end C:\>exit /b 0 --(置換前 t22.org LF改行コード)-------------- J0000000 HHH 519 2011-08-28 12:16:44.98302 2011-08-28 12:16:44.016114 0 abc --(置換後 t22.txt CR+LF改行コード)----------- J0000000 HHH 519 2011-08-28 12:16:44.98302 2011-08-28 12:16:44.016114 0 xxxx ------------------------------------------ 皆さんのご意見、ご指導をお待ちしてます。
- ベストアンサー
- その他(プログラミング・開発)
- 2の補数について
情報処理試験(基本情報)用の考え方という前提でお聞きします。 「負数を2の補数形式で表現する2進数の計算で・・・・」という問題がよくあります。 この問題文の中で「10101」などの数(これは5ビットの符号付2進数とします) として記述されているものは、もう2の補数になっていると考えていいのでしょうか? それともこれを、今から2の補数に直すのですか? (もし直すのであれば、最上位ビットの符号が変わるのでしょうか?) 違う言い方をしてみますと「A」の2の補数が「-A」だとしたら、 「-A」の2の補数は「A」になるんでしょうか? それとも「そんな表現はない。-Aの時点ですでに2の補数だ」という ことになるのでしょうか? 解りにくくてすみません。
- ベストアンサー
- その他(プログラミング・開発)
- 補数について教えてください!
情報処理技術者試験の内容なんですが、やり方も理解できず悩んでいます。教えてください。 その1. 2の補数を使って解きなさい 0110 -)0111 ------------ その2. 次の2進数は2の補数であらわした負の値である。符号付きの10進数に変換しなさい。 1) 1001 2) 1010 3) 1111 4) 1000 その3. 次の10進数を2の補数(4ビット)に変換しなさい。 1)-6 2)-3 3)-5 4)-4 本を見ながら解いているのですがいまいち理解できません。お手数お掛けしますが、解る方がいらっしゃいましたら解説付で教えてくださると助かります!よろしくお願いいたします!
- ベストアンサー
- その他(プログラミング・開発)
- 2の補数について
みなさん教えてください。 今、情報関係の仕事に就き資格を取ろうと思っています。 その資格試験の問題に、下記のような問題が出てきて困っています。 考え方と回答を教えて頂けませんか。 お願いします。 (問題) 「16ビットを2の補数で表したとき、10進数の範囲は?」
- 締切済み
- その他([技術者向] コンピューター)
- 2の補数
(1)10進数1、2、3の値を2進数3桁で記述しなさい。またこれらの2の補数を求め3桁で記述しなさい。 (2)2進数における「2の補数」は、コンピュータにおける数値の扱いにおいて重要な役割を担うことができる。その役割について説明しなさい。 (3) (1)の解答から(2)で解答した役割は適切に機能していることが分かる。その理由を説明しなさい。 (4)2進数で表記したある数値の「2の補数」の求め方としてして、「各桁の1と0を反転し、それに1を加える」という方法がある。この方法が成立する理由を説明しなさい。(ヒント:2^b-1がどういう数であるかを考えるとよい) この問題の(2)からどう説明していいか分かりません。 どなたか教えて下さい。
- ベストアンサー
- 数学・算数
お礼
回答ありがとうございました。